/* Banklånet – tema */

:root {
	--bn-gron: #123b30;
	--bn-gron-2: #1c5040;
	--bn-gron-mork: #0d2b23;
	--bn-mynt: #b5873a;
	--bn-mynt-ljus: #e0b765;
	--bn-mynt-blek: #f3e6c8;
	--bn-papper: #f6f1e4;
	--bn-ljus: #fbf9f4;
	--bn-ink: #17211d;
	--bn-mut: #55615b;
	--bn-lin: #ddd4c1;
	--bn-lin-ljus: #ebe5d7;
	--bn-mint: #e6efe9;
	--bn-rubrik: 'Newsreader', Georgia, 'Times New Roman', serif;
	--bn-text: 'Public Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--bn-bredd: 860px;
	--bn-ytter: 1180px;
	--bn-radie: 16px;
	--bn-radie-s: 10px;
	--bn-skugga: 0 1px 2px rgba(18, 59, 48, .06), 0 10px 28px rgba(18, 59, 48, .08);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--bn-ljus);
	color: var(--bn-ink);
	font-family: var(--bn-text);
	font-size: 1.0625rem;
	line-height: 1.65;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}
img, svg, video, iframe { max-width: 100%; }
img { height: auto; }
a { color: var(--bn-gron); text-decoration-color: var(--bn-mynt); text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
a:hover { color: var(--bn-gron-2); text-decoration-color: var(--bn-gron-2); }
:focus-visible { outline: 3px solid var(--bn-mynt); outline-offset: 2px; }
h1, h2, h3, h4 { font-family: var(--bn-rubrik); color: var(--bn-ink); line-height: 1.18; font-weight: 600; letter-spacing: -.01em; margin: 1.6em 0 .55em; }
h1 { font-size: clamp(2rem, 4.6vw, 2.85rem); margin-top: .2em; }
h2 { font-size: clamp(1.55rem, 3.2vw, 1.95rem); }
h3 { font-size: clamp(1.22rem, 2.4vw, 1.38rem); }
h4 { font-size: 1.1rem; }
p { margin: 0 0 1.05em; }
strong { font-weight: 700; }
.bn-dold { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.bn-hoppa { position: absolute; left: -999px; top: 8px; z-index: 100; background: #fff; padding: 8px 14px; border-radius: 8px; }
.bn-hoppa:focus { left: 8px; }

/* Ramen: allt i huvudinnehållet har samma bredd */
.bn-ram { width: 100%; max-width: calc(var(--bn-bredd) + 40px); margin: 0 auto; padding: 0 20px; }
.bn-main { display: block; min-height: 60vh; padding-bottom: 56px; }

/* Knappar */
.bn-knapp { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 13px 22px; border-radius: 12px; font-weight: 700; font-size: 1rem; line-height: 1.2; text-decoration: none; border: 2px solid transparent; cursor: pointer; text-align: center; transition: background .15s, border-color .15s, color .15s; }
.bn-knapp--ansok, .bn-knapp:not(.bn-knapp--las) { background: var(--bn-mynt-ljus); color: var(--bn-ink); border-color: var(--bn-mynt-ljus); }
.bn-knapp--ansok:hover { background: #d4a94f; border-color: #d4a94f; color: var(--bn-ink); }
.bn-knapp--las { background: transparent; color: var(--bn-gron); border-color: var(--bn-gron); }
.bn-knapp--las:hover { background: var(--bn-gron); color: #fff; }

/* Sidhuvud */
.bn-topp { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .97); border-bottom: 1px solid var(--bn-lin-ljus); }
.admin-bar .bn-topp { top: 32px; }
.bn-topp__inre { max-width: var(--bn-ytter); margin: 0 auto; padding: 10px 20px; display: flex; align-items: center; gap: 20px; min-height: 72px; }
.bn-logga { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; color: var(--bn-ink); flex-shrink: 0; }
.bn-logga:hover { color: var(--bn-ink); }
.bn-logga__ord { display: flex; flex-direction: column; line-height: 1.05; }
.bn-logga__namn { font-family: var(--bn-rubrik); font-weight: 700; font-size: 1.55rem; letter-spacing: -.015em; color: var(--bn-gron); }
.bn-logga__namn span { color: var(--bn-mynt); }
.bn-logga__under { font-size: .76rem; color: var(--bn-mut); margin-top: 3px; }
.bn-logga--ljus .bn-logga__namn { color: #fff; }
.bn-logga--ljus .bn-logga__namn span { color: var(--bn-mynt-ljus); }
.bn-logga--ljus .bn-logga__under { color: #c9d6cf; }

.bn-nav { margin-left: auto; }
.bn-meny { list-style: none; margin: 0; padding: 0; display: flex; gap: 2px; align-items: center; }
.bn-meny > li { position: relative; display: flex; align-items: center; }
.bn-meny a { display: block; padding: 10px 12px; border-radius: 9px; color: var(--bn-ink); text-decoration: none; font-weight: 600; font-size: .96rem; line-height: 1.25; }
.bn-meny > li > a { white-space: nowrap; }
.bn-meny a:hover { background: var(--bn-papper); color: var(--bn-gron); }
.bn-meny .current-menu-item > a, .bn-meny .current-menu-ancestor > a { color: var(--bn-gron); box-shadow: inset 0 -2px 0 var(--bn-mynt); border-radius: 9px 9px 0 0; }
.bn-meny .sub-menu { list-style: none; margin: 0; padding: 8px; position: absolute; top: 100%; left: 0; min-width: 280px; background: #fff; border: 1px solid var(--bn-lin-ljus); border-radius: 14px; box-shadow: var(--bn-skugga); display: none; z-index: 5; }
.bn-meny .sub-menu a { font-weight: 500; padding: 9px 12px; }
.bn-meny .sub-menu .current-menu-item > a { box-shadow: none; background: var(--bn-papper); }
.bn-meny li:hover > .sub-menu, .bn-meny li:focus-within > .sub-menu, .bn-meny li.is-oppen > .sub-menu { display: block; }
.bn-undermeny-knapp { border: 0; background: transparent; color: var(--bn-ink); padding: 6px; margin-left: -6px; cursor: pointer; border-radius: 6px; display: inline-flex; }
.bn-menyknapp { display: none; margin-left: auto; align-items: center; gap: 9px; border: 1px solid var(--bn-lin); background: #fff; border-radius: 11px; padding: 10px 14px; font-weight: 700; font-size: .95rem; color: var(--bn-ink); cursor: pointer; font-family: inherit; }
.bn-menyknapp__streck, .bn-menyknapp__streck::before, .bn-menyknapp__streck::after { display: block; width: 18px; height: 2px; background: currentColor; border-radius: 2px; position: relative; transition: transform .2s, background .2s; }
.bn-menyknapp__streck::before, .bn-menyknapp__streck::after { content: ''; position: absolute; left: 0; }
.bn-menyknapp__streck::before { top: -6px; }
.bn-menyknapp__streck::after { top: 6px; }
.bn-meny-oppen .bn-menyknapp__streck { background: transparent; }
.bn-meny-oppen .bn-menyknapp__streck::before { transform: translateY(6px) rotate(45deg); }
.bn-meny-oppen .bn-menyknapp__streck::after { transform: translateY(-6px) rotate(-45deg); }

@media (max-width: 1020px) {
	.bn-menyknapp { display: inline-flex; }
	.bn-nav { position: fixed; inset: 72px 0 auto 0; max-height: calc(100vh - 72px); overflow-y: auto; background: #fff; border-bottom: 1px solid var(--bn-lin); box-shadow: var(--bn-skugga); padding: 10px 16px 22px; display: none; margin: 0; }
	.admin-bar .bn-nav { top: 118px; }
	.bn-meny-oppen .bn-nav { display: block; }
	.bn-meny { flex-direction: column; align-items: stretch; }
	.bn-meny > li { flex-wrap: wrap; border-bottom: 1px solid var(--bn-lin-ljus); }
	.bn-meny > li > a { flex: 1; font-size: 1.05rem; padding: 13px 8px; }
	.bn-meny .current-menu-item > a, .bn-meny .current-menu-ancestor > a { box-shadow: none; }
	.bn-meny .sub-menu { position: static; display: none; width: 100%; box-shadow: none; border: 0; padding: 0 0 8px 12px; min-width: 0; }
	.bn-meny li:hover > .sub-menu, .bn-meny li:focus-within > .sub-menu { display: none; }
	.bn-meny li.is-oppen > .sub-menu { display: block; }
	.bn-undermeny-knapp { padding: 12px; }
}
@media (max-width: 420px) {
	.bn-logga__under { display: none; }
	.bn-logga__namn { font-size: 1.32rem; }
	.bn-topp__inre { gap: 10px; padding: 8px 14px; min-height: 64px; }
	.bn-nav { inset: 64px 0 auto 0; }
	.bn-marke { width: 38px; height: 38px; }
}

/* Startsidans topp */
.bn-hero { width: 100%; max-width: calc(var(--bn-bredd) + 40px); margin: 0 auto; padding: 22px 20px 0; }
.bn-hero__kort { display: grid; grid-template-columns: 1.08fr .92fr; gap: 0; background: var(--bn-gron); color: #f4efe2; border-radius: var(--bn-radie); overflow: hidden; box-shadow: var(--bn-skugga); }
.bn-hero__text { padding: 34px 30px 32px; display: flex; flex-direction: column; justify-content: center; }
.bn-hero__etikett { margin: 0 0 8px; color: var(--bn-mynt-ljus); font-weight: 700; font-size: .92rem; letter-spacing: .02em; }
.bn-hero__rubrik { color: #fff; margin: 0 0 14px; font-size: clamp(1.9rem, 4.2vw, 2.55rem); }
.bn-hero__ingress { color: #e3ebe6; font-size: 1.08rem; margin: 0 0 22px; }
.bn-hero__knappar { display: flex; flex-wrap: wrap; gap: 10px; }
.bn-hero .bn-knapp--las { color: #fff; border-color: rgba(255, 255, 255, .6); }
.bn-hero .bn-knapp--las:hover { background: #fff; color: var(--bn-gron); }
.bn-hero__bild { margin: 0; min-height: 100%; }
.bn-hero__bild img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 38% 50%; }
@media (max-width: 760px) {
	.bn-hero { padding-top: 14px; }
	.bn-hero__kort { grid-template-columns: 1fr; }
	.bn-hero__text { padding: 26px 20px 24px; }
	.bn-hero__bild img { aspect-ratio: 16 / 9; height: auto; }
	.bn-hero__knappar { flex-direction: column; }
	.bn-hero__knappar .bn-knapp { width: 100%; }
}

/* Räntetavlan */
.bn-tavla { margin: 16px 0 0; background: var(--bn-gron-mork); border: 2px solid var(--bn-mynt); border-radius: var(--bn-radie); padding: 16px 16px 12px; color: #f4efe2; box-shadow: inset 0 0 0 4px var(--bn-gron-mork), inset 0 0 0 5px rgba(224, 183, 101, .35); }
.bn-tavla__rubrik { margin: 0 0 12px; font-family: var(--bn-rubrik); font-weight: 600; font-size: 1.15rem; color: #fff; display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.bn-tavla__rubrik span { font-family: var(--bn-text); font-size: .85rem; font-weight: 500; color: #b9cbc2; }
.bn-tavla__rutor { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.bn-tavla__rutor li { background: #0a221b; border: 1px solid rgba(224, 183, 101, .28); border-radius: 10px; padding: 10px 12px 11px; display: flex; flex-direction: column; gap: 2px; }
.bn-tavla__namn { font-size: .86rem; color: #c8d7cf; font-weight: 600; }
.bn-tavla__varde { position: relative; font-size: 1.6rem; font-weight: 800; color: var(--bn-mynt-ljus); font-variant-numeric: tabular-nums; letter-spacing: .01em; line-height: 1.25; }
.bn-tavla__not { font-size: .8rem; color: #a9bdb3; line-height: 1.35; }
.bn-tavla__fot { margin: 10px 2px 0; font-size: .82rem; color: #a9bdb3; }
@media (max-width: 760px) {
	.bn-tavla__rutor { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bn-tavla__varde { font-size: 1.4rem; }
}

/* Artikelhuvud */
.bn-artikel__huvud { padding-top: 22px; }
.bn-smulor { font-size: .88rem; color: var(--bn-mut); margin: 0 0 10px; }
.bn-smulor a { color: var(--bn-mut); }
.bn-smulor span[aria-hidden] { margin: 0 6px; color: var(--bn-lin); }
.bn-artikel__rubrik { margin: 0 0 16px; }

/* Byline */
.bn-byline { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; column-gap: 22px; row-gap: 4px; margin: 18px 0 22px; padding: 12px 0; border-top: 1px solid var(--bn-lin-ljus); border-bottom: 1px solid var(--bn-lin-ljus); }
.bn-byline > .bn-portratt { grid-row: 1 / span 2; }
.bn-byline p { margin: 0; }
.bn-portratt { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; flex-shrink: 0; border: 2px solid var(--bn-mynt-blek); }
.bn-portratt--ini { display: inline-flex; align-items: center; justify-content: center; background: var(--bn-gron); color: #fff; font-weight: 700; }
.bn-byline__rader { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bn-byline__namn { font-weight: 700; font-size: .98rem; display: flex; flex-wrap: wrap; gap: 0 10px; align-items: baseline; }
.bn-byline__namn a { color: var(--bn-ink); text-decoration: none; }
.bn-byline__namn a:hover { text-decoration: underline; }
.bn-byline__roll { font-weight: 500; color: var(--bn-mut); font-size: .9rem; }
.bn-byline__datum { font-size: .9rem; color: var(--bn-mut); display: flex; flex-wrap: wrap; gap: 0 14px; }
.bn-byline__kontroll { grid-column: 2; display: flex; align-items: center; gap: 6px; margin: 0; font-size: .9rem; line-height: 1.3; color: var(--bn-gron-2); font-weight: 600; white-space: nowrap; }
.bn-byline__kontroll .bn-kort { display: none; }
/* Bocken hänger ute i marginalen så att ordet Villkoren börjar rakt under P i Publicerad. */
.bn-byline .bn-byline__kontroll { margin-left: -21px; }
@media (max-width: 480px) {
	.bn-byline .bn-byline__kontroll { font-size: .84rem; }
	.bn-byline__kontroll .bn-lang { display: none; }
	.bn-byline__kontroll .bn-kort { display: inline; }
}
.bn-byline__kontroll svg { flex-shrink: 0; }
.bn-byline--info { font-size: .9rem; color: var(--bn-mut); margin: 6px 0 20px; }

/* Utvald bild */
.bn-utvald { margin: 0 0 26px; }
.bn-utvald img { display: block; width: 100%; border-radius: var(--bn-radie); aspect-ratio: 2 / 1; object-fit: cover; }
.bn-utvald figcaption, .bn-innehall figcaption, .wp-caption-text { font-size: .9rem; color: var(--bn-mut); margin-top: 8px; line-height: 1.5; }

/* Innehåll */
.bn-innehall { overflow-wrap: break-word; }
.bn-innehall > *:first-child { margin-top: 0; }
.bn-innehall h2 { padding-top: .2em; }
.bn-innehall h2::before { content: ''; display: block; width: 44px; height: 3px; background: var(--bn-mynt); border-radius: 2px; margin-bottom: 12px; }
.bn-innehall ul, .bn-innehall ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.bn-innehall li { margin-bottom: .45em; }
.bn-innehall ul li::marker { color: var(--bn-mynt); }
.bn-innehall ol li::marker { color: var(--bn-gron); font-weight: 700; }
.bn-innehall figure { margin: 26px 0; }
.bn-innehall figure img, .bn-innehall p > img { border-radius: var(--bn-radie-s); display: block; }
.bn-innehall img { max-height: 620px; width: auto; max-width: 100%; object-fit: contain; }
.bn-innehall figure.wp-caption, .bn-innehall .wp-caption { width: auto !important; max-width: 100%; }
.bn-innehall img.aligncenter, .bn-innehall .aligncenter { margin-left: auto; margin-right: auto; }
.bn-innehall blockquote { margin: 1.4em 0; padding: 14px 20px; border-left: 4px solid var(--bn-mynt); background: var(--bn-papper); border-radius: 0 var(--bn-radie-s) var(--bn-radie-s) 0; }
.bn-innehall iframe { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: var(--bn-radie-s); }
.bn-innehall .wp-video, .bn-innehall .instagram-media { max-width: 100% !important; }

/* Innehållsförteckning */
.bn-toc { margin: 8px 0 30px; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie-s); background: #fff; }
.bn-toc summary { display: flex; align-items: center; gap: 10px; padding: 14px 18px; cursor: pointer; list-style: none; font-weight: 700; }
.bn-toc summary::-webkit-details-marker { display: none; }
.bn-toc__antal { font-weight: 500; color: var(--bn-mut); font-size: .9rem; }
.bn-toc__pil { margin-left: auto; transition: transform .2s; }
.bn-toc details[open] .bn-toc__pil { transform: rotate(180deg); }
.bn-toc ol { margin: 0; padding: 4px 18px 16px 40px; }
.bn-toc li { margin: 4px 0; }

/* Tabeller: vanliga på dator, kort i mobilen */
.bn-innehall table, .bn-tabell { width: 100%; border-collapse: collapse; margin: 0 0 1.6em; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie-s); overflow: hidden; font-size: .98rem; }
.bn-innehall th, .bn-tabell th { background: var(--bn-gron); color: #fff; text-align: left; padding: 11px 14px; font-weight: 700; }
.bn-innehall td, .bn-tabell td { padding: 11px 14px; border-top: 1px solid var(--bn-lin-ljus); vertical-align: top; }
.bn-innehall tbody tr:nth-child(even) td, .bn-tabell tbody tr:nth-child(even) td { background: #fcfaf5; }
@media (max-width: 700px) {
	.bn-innehall table, .bn-tabell { border: 0; background: transparent; }
	.bn-innehall thead, .bn-tabell thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
	.bn-innehall tr, .bn-tabell tr { display: block; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie-s); margin-bottom: 12px; padding: 6px 0; }
	.bn-innehall td, .bn-tabell td { display: block; border: 0; padding: 6px 14px; text-align: left; background: transparent !important; }
	.bn-innehall td::before, .bn-tabell td::before { content: attr(data-label); display: block; font-size: .85rem; font-weight: 700; color: var(--bn-mut); line-height: 1.35; margin-bottom: 1px; }
	.bn-innehall td:not([data-label])::before, .bn-tabell td:not([data-label])::before { content: none; }
}

/* Rutor i texten */
.bn-snabbsvar { background: var(--bn-mint); border-left: 5px solid var(--bn-gron); border-radius: 0 var(--bn-radie-s) var(--bn-radie-s) 0; padding: 16px 20px; margin: 0 0 1.6em; }
.bn-snabbsvar p:last-child, .bn-ruta p:last-child, .bn-lankbox ul { margin-bottom: 0; }
.bn-ruta { background: var(--bn-papper); border: 1px solid var(--bn-lin); border-radius: var(--bn-radie-s); padding: 18px 20px; margin: 0 0 1.6em; }
.bn-ruta__titel { font-family: var(--bn-rubrik); font-weight: 600; font-size: 1.18rem; margin: 0 0 8px; color: var(--bn-ink); }
.bn-ruta ul { margin-bottom: 0; }
.bn-ruta--tips { background: #fff; border-color: var(--bn-mynt); }
.bn-lankbox { border: 1px solid var(--bn-lin); border-top: 4px solid var(--bn-gron); border-radius: var(--bn-radie-s); background: #fff; padding: 18px 20px; margin: 2em 0 1.4em; }
.bn-lankbox ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 22px; }
.bn-lankbox li { margin: 0; }
.bn-lankbox a { font-weight: 600; }
@media (max-width: 600px) { .bn-lankbox ul { grid-template-columns: 1fr; } }
.bn-steg { list-style: none; counter-reset: steg; padding: 0 !important; }
.bn-steg > li { counter-increment: steg; position: relative; padding: 2px 0 10px 50px; }
.bn-steg > li::before { content: counter(steg); position: absolute; left: 0; top: 0; width: 34px; height: 34px; border-radius: 50%; background: var(--bn-gron); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center; font-size: .95rem; }

/* Den särskilda upplysningen enligt KOVFS 2025:1 */
.bn-varning { display: flex; gap: 16px; align-items: flex-start; margin: 0 0 18px; padding: 16px 18px; background: #fff; border: 1px solid #d0d0d0; border-radius: var(--bn-radie-s); color: #000; }
/* KOVFS 2025:1: symbolen ska vara lika hög som tre rader text. Själva triangeln fyller 86 procent av ikonens höjd, så 5,6em ger tre rader à 1,6em. */
.bn-varning { font-size: 1.0625rem; }
.bn-varning__ikon { flex-shrink: 0; width: 5.6em; height: 5.6em; margin-top: -.3em; }
.bn-varning__text { margin: 0; font-size: 1em; line-height: 1.6; color: #000; text-wrap: pretty; }
.bn-varning__text strong, .bn-varning__text a { color: #000; }
.bn-varning__text a { text-decoration: underline; text-decoration-color: #000; }

/* Topplistor */
.bn-topplista { margin: 0 0 2em; }
.bn-lglista { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 18px; }
.bn-lg { position: relative; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); padding: 20px 22px; box-shadow: var(--bn-skugga); margin: 0 !important; }
.bn-lg__topp { display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 14px; margin-bottom: 12px; }
.bn-lg__plats { width: 34px; height: 34px; border-radius: 50%; background: var(--bn-gron); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 1rem; }
.bn-lg__logo { display: flex; align-items: center; justify-content: center; background: #fff; border: 1px solid var(--bn-lin-ljus); border-radius: 10px; padding: 8px 12px; width: 150px; height: 58px; }
.bn-lg__logo img, .bn-lh__logo img { max-height: 36px; width: auto; max-width: 100%; display: block; }
.bn-lg__namn { display: flex; flex-direction: column; min-width: 0; }
.bn-lg__titel { font-family: var(--bn-rubrik); font-weight: 700; font-size: 1.35rem; line-height: 1.2; }
.bn-lg__typ { color: var(--bn-mut); font-size: .92rem; }
.bn-lg__text { margin: 0 0 14px; }
.bn-lg__passar { margin: 12px 0 8px; }
.bn-lg__exempel { margin: 0 0 14px; font-size: .95rem; color: #34403a; background: var(--bn-ljus); border-radius: 8px; padding: 10px 12px; }
.bn-lg__knappar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.bn-lg__annons { font-size: .82rem; color: var(--bn-mut); margin-left: auto; }
.bn-topplista__not { font-size: .92rem; color: var(--bn-mut); margin: 12px 2px 0; }

/* Bankbetyget som sigill */
.bn-sigill { display: inline-grid; grid-template-columns: auto auto; grid-template-rows: auto auto; align-items: baseline; column-gap: 4px; padding: 7px 12px 6px; border-radius: 12px; background: var(--bn-mynt-blek); border: 1px solid #e3cf9f; color: var(--bn-ink); text-align: left; }
.bn-sigill__tal { font-family: var(--bn-rubrik); font-weight: 700; font-size: 1.45rem; line-height: 1; color: var(--bn-gron); }
.bn-sigill__av { font-size: .82rem; color: var(--bn-mut); }
.bn-sigill__namn { grid-column: 1 / -1; font-size: .74rem; font-weight: 700; color: #6f5521; }
.bn-sigill--stor .bn-sigill__tal { font-size: 1.9rem; }

/* Faktarader: etikett och värde på samma rad */
.bn-fakta { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 0 26px; }
/* Värdet står längst till höger när det får plats på etikettens rad. Annars hamnar det vänsterställt på egen rad under etiketten. */
.bn-fakta > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; padding: 8px 0; border-bottom: 1px dashed var(--bn-lin); }
.bn-fakta dt { font-weight: 600; color: var(--bn-mut); font-size: .93rem; flex: 1 0 auto; white-space: nowrap; }
.bn-fakta dd { margin: 0; flex: 0 1 auto; min-width: 0; text-align: left; font-weight: 600; font-size: .95rem; font-variant-numeric: tabular-nums; }
.bn-ingenbrytning { white-space: nowrap; }
.bn-fakta > .bn-fakta__lang { grid-column: 1 / -1; }
@media (min-width: 701px) {
	/* På datorn står faktan som en tabell: etiketterna i en kolumn och värdena vänsterställda bredvid. */
	.bn-fakta, .bn-lh .bn-lh__rutnat .bn-fakta { grid-template-columns: max-content minmax(0, 1fr); column-gap: 32px; }
	.bn-fakta > div { display: contents; }
	.bn-fakta dt, .bn-fakta dd { padding: 8px 0; border-bottom: 1px dashed var(--bn-lin); }
	.bn-fakta dd { text-align: left; }
}

@media (max-width: 700px) {
	.bn-lg { padding: 16px; }
	.bn-lg__topp { grid-template-columns: auto 1fr auto; grid-template-areas: 'plats logo sigill' 'namn namn namn'; gap: 10px 12px; }
	.bn-lg__plats { grid-area: plats; }
	.bn-lg__logo { grid-area: logo; width: 100%; max-width: 160px; height: 52px; }
	.bn-lg__namn { grid-area: namn; }
	.bn-lg__topp .bn-sigill { grid-area: sigill; }
	.bn-fakta { grid-template-columns: 1fr; }
	.bn-lg__knappar { flex-direction: column; align-items: stretch; }
	.bn-lg__knappar .bn-knapp { width: 100%; padding: 13px 12px; font-size: .97rem; white-space: nowrap; }
	.bn-lg__annons { margin: 0 auto; }
	/* I mobilen flyter triangeln till vänster. Texten löper bredvid i tre rader och sedan i full bredd, så att långa ord inte ger en smal och hackig spalt. */
	.bn-varning { display: block; padding: 12px 14px 12px 10px; }
	.bn-varning::after { content: ''; display: block; clear: both; }
	.bn-varning__ikon { float: left; margin: -.3em 10px 0 0; }
}

/* Artikelrutor i de äldre guiderna (ba-klasser i innehållet) */
.ba-intro { font-size: 1.12rem; line-height: 1.62; margin: 0 0 1.3em; }
.ba-intro strong { font-weight: 600; }
.ba-korthet, .ba-info, .ba-note, .ba-tip, .ba-warn { border-radius: var(--bn-radie-s); padding: 16px 20px; margin: 0 0 1.6em; border: 1px solid var(--bn-lin); border-left-width: 4px; background: #fff; }
.ba-korthet > strong, .ba-info > strong, .ba-note > strong, .ba-tip > strong, .ba-warn > strong { display: block; font-family: var(--bn-rubrik); font-size: 1.15rem; font-weight: 600; line-height: 1.3; margin: 0 0 6px; color: var(--bn-ink); }
.ba-korthet p:last-child, .ba-info p:last-child, .ba-note p:last-child, .ba-tip p:last-child, .ba-warn p:last-child { margin-bottom: 0; }
.ba-korthet { background: var(--bn-mint); border-color: #c9dccf; border-left-color: var(--bn-gron); }
.ba-info { background: #fff; border-left-color: var(--bn-gron-2); }
.ba-note { background: var(--bn-papper); border-left-color: var(--bn-mut); }
.ba-tip { background: #fff; border-color: var(--bn-mynt-blek); border-left-color: var(--bn-mynt); }
.ba-warn { background: #fbf1ec; border-color: #ecd2c6; border-left-color: #a5432f; }
.ba-etikett { display: block; font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #8a3524; margin: 0 0 4px; }
.ba-kort-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 1.6em; }
.ba-kort { background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie-s); padding: 16px 18px; }
.ba-kort h3 { font-size: 1.12rem; margin: 0 0 6px; }
.ba-kort p { margin: 0; font-size: .98rem; }
.ba-kort p + p { margin-top: 8px; }
.bn-innehall .ba-checklista, .bn-innehall .ba-krysslista { list-style: none; padding: 0; }
.ba-checklista li, .ba-krysslista li { position: relative; padding-left: 30px; margin: 0 0 8px; }
.ba-checklista li::before, .ba-krysslista li::before { position: absolute; left: 0; top: .2em; width: 20px; height: 20px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: .75rem; font-weight: 700; line-height: 1; }
.ba-checklista li::before { content: '\2713'; background: var(--bn-mint); color: var(--bn-gron); }
.ba-krysslista li::before { content: '\2715'; background: #f6e3dc; color: #8a3524; }
.bn-innehall .ba-steg { list-style: none; padding: 0; counter-reset: ba-steg; }
.ba-steg li { counter-increment: ba-steg; position: relative; padding: 0 0 0 44px; margin: 0 0 14px; min-height: 30px; }
.ba-steg li::before { content: counter(ba-steg); position: absolute; left: 0; top: 0; width: 30px; height: 30px; border-radius: 50%; background: var(--bn-gron); color: #fff; font-weight: 700; font-size: .92rem; display: flex; align-items: center; justify-content: center; }
.ba-pris { background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); padding: 6px 20px 10px; margin: 0 0 1.6em; box-shadow: var(--bn-skugga); }
.ba-pris-topp { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 16px; padding: 12px 0; border-bottom: 2px solid var(--bn-ink); }
.ba-pris-label { font-weight: 700; color: var(--bn-mut); font-size: .95rem; }
.ba-pris-belopp { font-family: var(--bn-rubrik); font-size: 1.7rem; font-weight: 700; color: var(--bn-gron); font-variant-numeric: tabular-nums; }
.ba-pris-rad { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 16px; padding: 8px 0; border-bottom: 1px dashed var(--bn-lin); font-variant-numeric: tabular-nums; }
.ba-pris-rad:last-child { border-bottom: 0; }
.ba-pris-rad span:first-child { color: var(--bn-mut); }
.ba-pris-rad span:last-child { font-weight: 600; }
.ba-pros-cons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0 0 1.6em; }
.ba-pros, .ba-cons { background: #fff; border: 1px solid var(--bn-lin); border-top: 4px solid var(--bn-gron); border-radius: var(--bn-radie-s); padding: 14px 18px; }
.ba-cons { border-top-color: #a5432f; }
.ba-pros > strong, .ba-cons > strong { display: block; font-family: var(--bn-rubrik); font-size: 1.12rem; font-weight: 600; margin: 0 0 6px; }
.ba-pros ul, .ba-cons ul { margin: 0; }
.ba-faq { margin: 0 0 1.6em; }
.ba-faq dt { font-family: var(--bn-rubrik); font-weight: 600; font-size: 1.15rem; line-height: 1.35; margin: 18px 0 4px; color: var(--bn-ink); }
.ba-faq dt:first-child { margin-top: 0; }
.ba-faq dd { margin: 0; padding: 0 0 14px; border-bottom: 1px solid var(--bn-lin-ljus); }
.ba-faq dd:last-child { border-bottom: 0; }
.ba-tidslinje { position: relative; margin: 0 0 1.6em; padding-left: 26px; border-left: 2px solid var(--bn-mynt-blek); }
.ba-tidslinje-item { position: relative; margin: 0 0 16px; }
.ba-tidslinje-item::before { content: ''; position: absolute; left: -33px; top: .45em; width: 12px; height: 12px; border-radius: 50%; background: var(--bn-mynt); border: 2px solid var(--bn-ljus); }
.ba-tidslinje-item > strong:first-child { display: block; }
.ba-tidslinje-item p { margin: 2px 0 0; }
.ba-disclaimer { font-size: .9rem; line-height: 1.55; color: var(--bn-mut); background: var(--bn-papper); border-radius: var(--bn-radie-s); padding: 14px 18px; margin: 2em 0 1.4em; }
.ba-disclaimer strong { color: var(--bn-ink); }
.ba-kallor { font-size: .9rem; color: var(--bn-mut); border-top: 1px solid var(--bn-lin); padding-top: 12px; margin: 0 0 1.6em; }
.bn-innehall .ba-kallor h2 { font-size: 1.05rem; font-family: var(--bn-text); font-weight: 700; margin: 0 0 6px; padding: 0; color: var(--bn-ink); }
.bn-innehall .ba-kallor h2::before { display: none; }
.ba-kallor ul { margin: 0; }
@media (max-width: 700px) {
	.ba-kort-grid, .ba-pros-cons { grid-template-columns: 1fr; }
	.ba-korthet, .ba-info, .ba-note, .ba-tip, .ba-warn { padding: 14px 16px; }
	.ba-pris { padding: 4px 16px 8px; }
	.bn-innehall td:not([data-label]) { font-weight: 700; }
}

/* Långivarsidornas huvud */
.bn-lh__inaktiv { margin: 0; padding: 12px 16px; background: var(--bn-papper); border-radius: var(--bn-radie-s); font-weight: 600; color: var(--bn-mut); }
.bn-lh { background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); padding: 22px; box-shadow: var(--bn-skugga); margin: 4px 0 18px; }
.bn-lh__topp { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.bn-lh__logo { display: flex; align-items: center; height: 64px; }
.bn-lh__logo img { max-height: 48px; }
.bn-lh__typ { font-family: var(--bn-rubrik); font-size: 1.3rem; font-weight: 600; margin: 12px 0 10px; }
.bn-lh__rutnat { display: grid; grid-template-columns: 1.5fr 1fr; gap: 26px; margin-bottom: 14px; }
.bn-lh__rutnat .bn-fakta { grid-template-columns: 1fr; }
.bn-lh__betyg { background: var(--bn-ljus); border-radius: 12px; padding: 14px 16px; align-self: start; }
.bn-lh__rubrik { font-weight: 700; margin: 0 0 8px; }
.bn-del { list-style: none; margin: 0; padding: 0; }
.bn-del li { display: grid; grid-template-columns: 76px 1fr 32px; align-items: center; gap: 10px; margin: 8px 0; font-size: .93rem; }
.bn-del__matare { height: 8px; background: var(--bn-lin-ljus); border-radius: 6px; overflow: hidden; }
.bn-del__matare i { display: block; height: 100%; background: var(--bn-gron); border-radius: 6px; }
.bn-del__tal { font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; }
@media (max-width: 760px) {
	.bn-lh { padding: 16px; }
	.bn-lh__rutnat { grid-template-columns: 1fr; gap: 14px; }
	.bn-lh .bn-lg__knappar { flex-direction: column; align-items: stretch; }
	.bn-lh .bn-lg__annons { margin: 0 auto; }
}

/* Verktyg: gemensamt */
.bn-falt { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bn-falt label { font-weight: 700; font-size: .93rem; }
.bn-falt__rad { display: flex; align-items: center; gap: 8px; }
.bn-falt input[type="number"] { width: 100%; min-width: 0; font: inherit; font-weight: 700; font-variant-numeric: tabular-nums; padding: 9px 11px; border: 1px solid var(--bn-lin); border-radius: 9px; background: #fff; color: var(--bn-ink); }
.bn-falt__enhet { color: var(--bn-mut); font-weight: 600; font-size: .92rem; }
.bn-falt input[type="range"] { width: 100%; accent-color: var(--bn-gron); margin: 2px 0 0; }
.bn-verktyg__not { font-size: .9rem; color: var(--bn-mut); margin: 12px 0 0; }

/* Kontoutdraget */
.bn-utdrag { margin: 0 0 2em; background: var(--bn-papper); border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); overflow: hidden; }
.bn-utdrag__huvud, .bn-trappa__huvud, .bn-bil__huvud { background: var(--bn-gron); color: #fff; padding: 16px 20px; }
.bn-utdrag__titel, .bn-trappa__titel, .bn-bil__titel { font-family: var(--bn-rubrik); font-size: 1.35rem; font-weight: 600; margin: 0; color: #fff; }
.bn-utdrag__under, .bn-trappa__under, .bn-bil__under { margin: 2px 0 0; color: #cfdcd5; font-size: .95rem; }
.bn-utdrag__falt { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; padding: 18px 20px 6px; }
.bn-utdrag__papper { margin: 12px 20px 0; background: #fff; border: 1px solid var(--bn-lin); border-radius: 12px; padding: 4px 16px 14px; background-image: repeating-linear-gradient(#fff 0 35px, #f4f0e6 35px 36px); }
.bn-utdrag__tabell { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; font-size: .95rem; margin: 0; }
.bn-utdrag__tabell th { text-align: right; font-size: .84rem; color: var(--bn-mut); font-weight: 700; padding: 12px 6px 8px; border-bottom: 2px solid var(--bn-ink); background: transparent; }
.bn-utdrag__tabell th:first-child, .bn-utdrag__tabell td:first-child { text-align: left; }
.bn-utdrag__tabell td { text-align: right; padding: 7px 6px; border-bottom: 1px dotted var(--bn-lin); background: transparent; }
.bn-utdrag__tabell tbody tr:last-child td { border-bottom: 2px solid var(--bn-ink); }
.bn-utdrag__summa { margin: 12px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.bn-utdrag__summa > div { background: var(--bn-ljus); border-radius: 10px; padding: 10px 12px; }
.bn-utdrag__summa dt { font-size: .84rem; color: var(--bn-mut); font-weight: 600; }
.bn-utdrag__summa dd { margin: 2px 0 0; font-weight: 800; font-size: 1.15rem; font-variant-numeric: tabular-nums; }
.bn-utdrag .bn-verktyg__not, .bn-trappa .bn-verktyg__not, .bn-bil .bn-verktyg__not { padding: 0 20px 18px; }
@media (max-width: 760px) {
	.bn-utdrag__falt { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 16px 16px 4px; }
	.bn-utdrag__papper { margin: 12px 12px 0; padding: 4px 10px 12px; background-image: none; }
	.bn-utdrag__tabell thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
	.bn-utdrag__tabell tr { display: block; margin: 0; border: 0; border-bottom: 1px solid var(--bn-lin); border-radius: 0; background: transparent; padding: 8px 0; }
	.bn-utdrag__tabell tbody tr:last-child td { border-bottom: 0; }
	.bn-utdrag__tabell td { display: flex; justify-content: space-between; gap: 10px; border: 0; padding: 3px 0; }
	.bn-utdrag__tabell td::before { content: attr(data-label); display: inline; margin: 0; font-size: inherit; color: var(--bn-mut); font-weight: 600; }
	.bn-utdrag__tabell td:first-child { font-weight: 800; }
	.bn-utdrag__summa { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 380px) { .bn-utdrag__falt { grid-template-columns: 1fr; } }

/* Räntetrappan */
.bn-trappa { margin: 0 0 2em; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); overflow: hidden; }
.bn-trappa__falt { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 18px 20px 4px; }
.bn-trappa__steg { list-style: none; margin: 16px 20px 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); align-items: end; gap: 6px; min-height: 250px; }
.bn-trappa__steg li { margin: 0; display: flex; flex-direction: column; justify-content: flex-end; min-width: 0; }
.bn-trappa__block { background: linear-gradient(180deg, var(--bn-gron-2), var(--bn-gron)); color: #fff; border-radius: 8px 8px 0 0; padding: 8px 6px; display: flex; flex-direction: column; justify-content: flex-start; gap: 2px; height: calc(70px + var(--andel, 0) * 150px); text-align: center; transition: height .25s; }
.bn-trappa__steg li:last-child .bn-trappa__block { background: linear-gradient(180deg, #8f3b2b, #6e2a1e); }
.bn-trappa__ranta { font-weight: 800; font-size: 1rem; }
.bn-trappa__manad { font-size: .8rem; color: #d7e3dc; }
.bn-trappa__kostnad { font-size: .82rem; font-weight: 700; color: var(--bn-ink); text-align: center; padding: 6px 2px 0; border-top: 3px solid var(--bn-ink); font-variant-numeric: tabular-nums; }
@media (max-width: 700px) {
	.bn-trappa__falt { grid-template-columns: 1fr; }
	.bn-trappa__steg { grid-template-columns: 1fr; min-height: 0; margin: 14px 14px 0 !important; gap: 6px; }
	.bn-trappa__steg li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; }
	.bn-trappa__block { height: auto; width: calc(58% + var(--andel, 0) * 42%); border-radius: 0 8px 8px 0; flex-direction: column; align-items: flex-start; padding: 8px 10px; text-align: left; }
	.bn-trappa__kostnad { border: 0; padding: 0; text-align: right; }
}

/* Bilkassan */
.bn-bil { margin: 0 0 2em; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); overflow: hidden; }
.bn-bil__falt { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; padding: 18px 20px 4px; }
.bn-bil__resultat { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 16px 20px 0; }
.bn-bil__kolumn { border: 1px solid var(--bn-lin); border-radius: 12px; padding: 14px 16px; background: var(--bn-ljus); }
.bn-bil__kolumn[data-kolumn="bil"] { border-top: 4px solid var(--bn-gron); }
.bn-bil__kolumn[data-kolumn="priv"] { border-top: 4px solid var(--bn-mynt); }
.bn-bil__namn { font-weight: 800; margin: 0 0 6px; }
.bn-bil__kolumn dl { margin: 0; }
.bn-bil__kolumn dl > div { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px dashed var(--bn-lin); }
.bn-bil__kolumn dt { color: var(--bn-mut); font-weight: 600; font-size: .93rem; }
.bn-bil__kolumn dd { margin: 0; font-weight: 800; font-variant-numeric: tabular-nums; }
.bn-bil__krav { font-size: .9rem; margin: 10px 0 0; color: #34403a; }
.bn-bil__krav.is-varning { color: #8f2b1e; font-weight: 700; }
.bn-bil__skillnad { margin: 14px 20px 0; font-weight: 700; }
@media (max-width: 760px) {
	.bn-bil__falt { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 16px 16px 4px; }
	.bn-bil__resultat { grid-template-columns: 1fr; padding: 14px 16px 0; }
	.bn-bil__skillnad { margin: 14px 16px 0; }
}
@media (max-width: 380px) { .bn-bil__falt { grid-template-columns: 1fr; } }

/* Skribentrutan */
.bn-skribent { display: flex; gap: 18px; align-items: flex-start; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); padding: 20px; margin: 36px 0 10px; }
.bn-skribent .bn-portratt { width: 84px; height: 84px; }
.bn-skribent p { margin: 0 0 8px; font-size: .97rem; }
.bn-skribent__namn { font-family: var(--bn-rubrik); font-weight: 700; font-size: 1.25rem !important; margin-bottom: 0 !important; }
.bn-skribent__roll { color: var(--bn-mut); font-size: .92rem !important; }
.bn-skribent__lankar { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 !important; }
.bn-skribent__lankar a { font-weight: 600; }
@media (max-width: 560px) { .bn-skribent { flex-direction: column; } }

/* Artikelkort */
.bn-rad { margin: 40px 0 0; }
.bn-rad__huvud { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.bn-rad__rubrik { margin: 0 0 14px; font-size: 1.5rem; }
.bn-kortlista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.bn-pkort { margin: 0; }
.bn-pkort__lank { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--bn-lin); border-radius: var(--bn-radie); overflow: hidden; text-decoration: none; color: var(--bn-ink); transition: box-shadow .15s, transform .15s; }
.bn-pkort__lank:hover { box-shadow: var(--bn-skugga); transform: translateY(-2px); color: var(--bn-ink); }
.bn-pkort__bild { display: flex; align-items: center; justify-content: center; aspect-ratio: 2 / 1; background: var(--bn-papper); overflow: hidden; }
.bn-pkort__bild img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bn-pkort__text { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; }
.bn-pkort__datum { font-size: .84rem; color: var(--bn-mut); }
.bn-pkort__titel { font-family: var(--bn-rubrik); font-weight: 700; font-size: 1.15rem; line-height: 1.25; }
.bn-pkort__utdrag { font-size: .93rem; color: #3d4944; }
@media (max-width: 860px) { .bn-kortlista { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .bn-kortlista { grid-template-columns: 1fr; } }
.bn-lista .bn-kortlista { margin-top: 10px; }
.bn-sidor, .nav-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0 0; }
.bn-sidor a, .bn-sidor span, .nav-links a, .nav-links span { padding: 8px 14px; border: 1px solid var(--bn-lin); border-radius: 9px; background: #fff; text-decoration: none; }
.bn-sidor span[aria-current], .nav-links .current { background: var(--bn-gron); color: #fff; border-color: var(--bn-gron); }

/* Sök */
.bn-sok { display: flex; gap: 8px; margin: 10px 0 24px; }
.bn-sok label { flex: 1; }
.bn-sok input { width: 100%; font: inherit; padding: 12px 14px; border: 1px solid var(--bn-lin); border-radius: 11px; }

/* Kontaktformulär */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 textarea { width: 100%; font: inherit; padding: 11px 13px; border: 1px solid var(--bn-lin); border-radius: 10px; background: #fff; }
.wpcf7 input[type="submit"] { font: inherit; font-weight: 700; padding: 12px 22px; border: 0; border-radius: 12px; background: var(--bn-gron); color: #fff; cursor: pointer; }

/* Sidfot */
.bn-fot { background: var(--bn-gron); color: #dbe5df; margin-top: 30px; }
.bn-fot a { color: #fff; text-decoration-color: var(--bn-mynt-ljus); }
.bn-fot__inre { max-width: var(--bn-ytter); margin: 0 auto; padding: 44px 20px 26px; display: grid; grid-template-columns: 1.1fr 2fr; gap: 40px; }
.bn-fot__forsta p { font-size: .95rem; margin: 14px 0 0; }
.bn-fot__lank { font-weight: 700; }
.bn-fotmeny { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bn-fotmeny > li > a { font-family: var(--bn-rubrik); font-weight: 600; font-size: 1.12rem; color: #fff; text-decoration: none; display: block; margin-bottom: 8px; }
.bn-fotmeny .sub-menu { list-style: none; margin: 0; padding: 0; }
.bn-fotmeny .sub-menu li { margin: 0 0 6px; }
.bn-fotmeny .sub-menu a { color: #dbe5df; text-decoration: none; font-size: .95rem; }
.bn-fotmeny .sub-menu a:hover { color: #fff; text-decoration: underline; }
.bn-fot__botten { max-width: var(--bn-ytter); margin: 0 auto; padding: 16px 20px 26px; border-top: 1px solid rgba(255, 255, 255, .14); display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 20px; font-size: .86rem; color: #b5c6bd; }
.bn-fot__botten p { margin: 0; }
.bn-fot__botten a { color: #dbe5df; }
.bn-fot__adress { margin: 0; font-style: normal; font-size: .8rem; color: #9fb3a8; }
@media (max-width: 860px) {
	.bn-fot__inre { grid-template-columns: 1fr; gap: 26px; }
	.bn-fotmeny { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) { .bn-fotmeny { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	* { transition: none !important; }
}

/* Skribentens porträtt på Redaktionen */
.bn-portratt-stor { margin: 4px 0 22px; max-width: 280px; }
.bn-portratt-stor img { display: block; width: 100%; height: auto; border-radius: var(--bn-radie); border: 3px solid var(--bn-mynt-blek); }

/* Interaktiva staplar */
.bn-staplar { margin: 28px 0; padding: 20px 20px 14px; background: #fff; border: 1px solid var(--bn-lin-ljus); border-radius: var(--bn-radie); box-shadow: var(--bn-skugga); }
.bn-staplar__rubrik { margin: 0 0 14px; font-family: var(--bn-rubrik); font-size: 1.2rem; font-weight: 600; line-height: 1.3; color: var(--bn-ink); }
.bn-staplar__lista { list-style: none; margin: 0; padding: 0; }
.bn-staplar__lista .bn-stapel { margin: 0 0 6px; padding: 0; }
.bn-stapel__knapp { display: grid; grid-template-columns: minmax(0, 15em) minmax(0, 1fr) 4.2em; align-items: center; gap: 12px; width: 100%; padding: 8px 10px; margin: 0; border: 0; border-radius: var(--bn-radie-s); background: transparent; color: var(--bn-ink); font: inherit; font-size: .97rem; text-align: left; cursor: pointer; transition: background-color .2s; }
.bn-stapel__knapp:disabled { cursor: default; }
.bn-stapel__knapp:not(:disabled):hover, .bn-stapel__knapp[aria-expanded="true"] { background: var(--bn-mint); }
.bn-stapel__knapp:focus-visible { outline: 2px solid var(--bn-mynt); outline-offset: 2px; }
.bn-stapel__etikett { font-weight: 600; line-height: 1.35; }
.bn-stapel__spar { display: block; height: 14px; border-radius: 999px; background: var(--bn-lin-ljus); overflow: hidden; }
.bn-stapel__fyll { display: block; height: 100%; width: var(--bn-stapel); border-radius: 999px; background: linear-gradient(90deg, var(--bn-gron-2), var(--bn-gron)); transition: width 1s cubic-bezier(.2, .7, .2, 1); }
.bn-staplar.vantar .bn-stapel__fyll { width: 0; }
.bn-stapel__knapp[aria-expanded="true"] .bn-stapel__fyll { background: linear-gradient(90deg, var(--bn-mynt), var(--bn-mynt-ljus)); }
.bn-stapel__varde { font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; }
.bn-stapel__info { margin: 4px 10px 10px; padding: 10px 14px; border-left: 3px solid var(--bn-mynt); background: var(--bn-ljus); font-size: .95rem; line-height: 1.55; }
.bn-staplar__not { margin: 12px 10px 0; font-size: .88rem; color: var(--bn-mut); line-height: 1.5; }
.bn-staplar__tips { margin: 6px 10px 0; font-size: .82rem; color: var(--bn-mut); }
@media (max-width: 700px) {
	.bn-staplar { padding: 16px 12px 12px; }
	.bn-stapel__knapp { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "etikett varde" "spar spar"; row-gap: 6px; }
	.bn-stapel__etikett { grid-area: etikett; }
	.bn-stapel__varde { grid-area: varde; }
	.bn-stapel__spar { grid-area: spar; }
}
@media (prefers-reduced-motion: reduce) { .bn-stapel__fyll { transition: none; } }
