
  :root{ --brand: #a81f24; --primary: #33333a; --hcol: #141b2e; --btnbg: #a81f24; --btnbg2: #821318; --btncol: #ffffff; --btnol: #141b2e; --heading: "Spectral", serif; --body: "Inter", sans-serif;
    --mm-accent: #a81f24; --mm-accent2: #79161a; --mm-accent3: #cd7d80; --mm-accent-rgb: 76,14,16;
    --mm-orb1: #d48f92; --mm-orb2: #e8c5c6; --mm-orb3: #dca5a7;
    --mm-grad-text: linear-gradient(105deg,#a81f24,#761619,#bb5054); --mm-grad-stripe: linear-gradient(90deg,#a81f24,#bb5054,#cf8487); --mm-chip-bg: linear-gradient(135deg,#f1dbdc,#e5bcbd);
    --mm-muted: #68686d; --mm-lead: #58585d; --mm-caption: #68686d; --mm-fs-liten: .86rem; --mm-fs-kicker: .78rem; --mm-fs-lead: clamp(1.1rem,2vw,1.32rem); }
  *{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:96px}
  body{margin:0;font-family:var(--body);color:var(--primary);line-height:1.4;background:#fff;overflow-wrap:break-word;font-size:17px;font-weight:400;letter-spacing:0px}
  h1,h2,h3,h4,h5,h6{line-height:1.2;margin:.2em 0 .4em;font-weight:300;color:var(--hcol)}
  h1,h2,h3{font-family:var(--heading)}
  h4,h5,h6{font-family:var(--body)}  /* sub-headings in the readable sans body font, like the original */
  h1{font-size:45.9px}h2{font-size:37.7px}h3{font-size:30.9px}h4{font-size:25.3px}h5{font-size:20.7px}h6{font-size:17px}
  /* Ucraft per-element size multipliers (e.g. font-6em = 0.6em) used inside headings/paragraphs */
  .font-1em{font-size:0.1em}.font-2em{font-size:0.2em}.font-3em{font-size:0.3em}.font-4em{font-size:0.4em}.font-5em{font-size:0.5em}.font-6em{font-size:0.6em}.font-7em{font-size:0.7em}.font-8em{font-size:0.8em}.font-9em{font-size:0.9em}.font-10em{font-size:1em}.font-11em{font-size:1.1em}.font-12em{font-size:1.2em}.font-13em{font-size:1.3em}.font-14em{font-size:1.4em}.font-15em{font-size:1.5em}.font-16em{font-size:1.6em}.font-17em{font-size:1.7em}.font-18em{font-size:1.8em}.font-19em{font-size:1.9em}.font-20em{font-size:2em}.font-21em{font-size:2.1em}.font-22em{font-size:2.2em}.font-23em{font-size:2.3em}.font-24em{font-size:2.4em}.font-25em{font-size:2.5em}.font-26em{font-size:2.6em}.font-27em{font-size:2.7em}.font-28em{font-size:2.8em}.font-29em{font-size:2.9em}.font-30em{font-size:3em}.font-31em{font-size:3.1em}.font-32em{font-size:3.2em}.font-33em{font-size:3.3em}.font-34em{font-size:3.4em}.font-35em{font-size:3.5em}.font-36em{font-size:3.6em}.font-37em{font-size:3.7em}.font-38em{font-size:3.8em}.font-39em{font-size:3.9em}.font-40em{font-size:4em}  img{max-width:100%;height:auto;display:block}
  a{color:var(--brand);text-decoration:none}
  /* iOS-datadeteksjon (hindring #139): nøytraliser auto-lenker Safari likevel lager */
  a[x-apple-data-detectors]{color:inherit!important;text-decoration:none!important;-webkit-text-decoration:none!important;font:inherit!important}
  main a:hover{text-decoration:underline}
  .wrap{max-width:1140px;margin:0 auto;padding:0 20px}
  /* ── design FX: decorative orbs, scroll-reveal, gradient text (opt-in per section) ── */
  .band.hasorbs{position:relative;overflow:hidden}
  .band.hasorbs>.wrap{position:relative;z-index:1}
  .mm-orbs{position:absolute;inset:0;z-index:0;pointer-events:none}
  .mm-orb{position:absolute;border-radius:50%;filter:blur(52px)}
  .mm-orb.o1{width:40vw;max-width:480px;aspect-ratio:1;background:var(--mm-orb1,#ff8fc8);opacity:.55;top:-8%;left:-6%;animation:mmfloat 17s ease-in-out infinite}
  .mm-orb.o2{width:34vw;max-width:420px;aspect-ratio:1;background:var(--mm-orb2,#ffd6a5);opacity:.5;bottom:-10%;right:-5%;animation:mmfloat 21s ease-in-out infinite reverse}
  .mm-orb.o3{width:28vw;max-width:340px;aspect-ratio:1;background:var(--mm-orb3,#d7a8ff);opacity:.4;top:26%;right:14%;animation:mmfloat 24s ease-in-out infinite}
  @keyframes mmfloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(0,26px) scale(1.06)}}
  @media(prefers-reduced-motion:reduce){.mm-orb{animation:none}}
  /* architectural section edge shapes (SVG cut between bands) */
  .band.hasshape{position:relative}
  .band.hasshape>.wrap{position:relative;z-index:3}
  .mm-shape{position:absolute;left:0;width:100%;height:var(--mm-shape-h,clamp(36px,6vw,92px));line-height:0;z-index:2;pointer-events:none}
  .mm-shape svg{display:block;width:100%;height:100%}
  .mm-shape-bottom{bottom:-1px}
  .mm-shape-top{top:-1px;transform:rotate(180deg)}
  /* måleakse i margen (#242) — se settings.akse i src/render/band.php for reglene */
  .band.hasakse{position:relative}
  .band.hasakse>.wrap{position:relative;z-index:1}
  .mm-akse{position:absolute;top:0;height:var(--akse-len,220px);z-index:0;pointer-events:none;opacity:0}
  .mm-akse-fort{top:0;bottom:0;height:auto}
  .mm-akse-venstre{left:max(14px,calc(50% - 592px))}
  .mm-akse-hoyre{right:max(14px,calc(50% - 592px))}
  @media(min-width:820px){.mm-akse{opacity:1}.mm-akse{opacity:clamp(0,calc((100vw - var(--akse-min,1024px)) / 1px),1)}}
  .mm-akse-l{position:absolute;top:0;bottom:0;left:0;width:var(--akse-b,1px);background:var(--akse-f,rgba(127,127,127,.45))}
  .mm-akse-t{position:absolute;top:0;left:0;height:var(--akse-b,1px);width:var(--akse-tw,14px);background:var(--akse-f,rgba(127,127,127,.45))}
  .mm-akse-e{position:absolute;top:0;left:calc(var(--akse-tw,14px) + 10px);white-space:nowrap;line-height:1;transform:translateY(-.4em);font-size:.68rem;color:var(--akse-f,rgba(127,127,127,.45))}
  .mm-akse-mono .mm-akse-e{font-family:var(--mm-font-utility,var(--body));letter-spacing:.14em;text-transform:uppercase}
  .mm-akse-hoyre .mm-akse-t{left:auto;right:0}
  .mm-akse-hoyre .mm-akse-l{left:auto;right:0}
  .mm-akse-hoyre .mm-akse-e{left:auto;right:calc(var(--akse-tw,14px) + 10px)}
  /* lite bilde oppå toppbildet (#243): lag i hero-en, ikke modul — hovedbildet blør fortsatt til
     kanten. Skjult under 820px så det aldri legger seg oppå teksten på mobil. */
  .band.hashero2{position:relative}
  .band.hashero2>.wrap{position:relative;z-index:2}
  .mm-hero2{display:none}
  @media(min-width:820px){
    .mm-hero2{display:block;position:absolute;z-index:1;width:var(--h2w,26%);aspect-ratio:var(--h2asp,1/1);overflow:hidden;box-shadow:0 18px 44px rgba(10,14,22,.28)}
    .mm-hero2-ram{border:8px solid var(--h2r,#fff)}
    .mm-hero2 img{width:100%;height:100%;object-fit:cover;display:block}
    .mm-hero2-bottom-right{right:max(20px,calc(50% - 570px));bottom:0;transform:translate(var(--h2x,0px),calc(-1 * clamp(24px,5vw,64px) + var(--h2y,0px)))}
    .mm-hero2-bottom-left{left:max(20px,calc(50% - 570px));bottom:0;transform:translate(var(--h2x,0px),calc(-1 * clamp(24px,5vw,64px) + var(--h2y,0px)))}
    .mm-hero2-top-right{right:max(20px,calc(50% - 570px));top:0;transform:translate(var(--h2x,0px),calc(clamp(24px,5vw,64px) + var(--h2y,0px)))}
    .mm-hero2-top-left{left:max(20px,calc(50% - 570px));top:0;transform:translate(var(--h2x,0px),calc(clamp(24px,5vw,64px) + var(--h2y,0px)))}
    /* etiketten ligger PÅ fotoet: mørk scrim + hvit tekst er lesbar uansett motiv og rammefarge */
    .mm-hero2-b{position:absolute;left:0;bottom:0;padding:.5em .75em;background:rgba(10,14,22,.72);color:#fff;font-family:var(--mm-font-utility,var(--body));font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1}
  }
  /* sticky split-scroll: one column holds while the other scrolls (desktop only) */
  @media(min-width:880px){
    .band.mm-sticky-left>.wrap>.row>.col:first-child,
    .band.mm-sticky-right>.wrap>.row>.col:last-child{position:sticky;top:96px;align-self:flex-start}
  }
  /* oversized editorial hero type */
  .band.hero.mm-xl h1,.band.hero.mm-xl h1 *{font-size:clamp(2.6rem,8.5vw,5.4rem) !important;line-height:1.04 !important;letter-spacing:-.012em !important}
  /* image tone treatments (cohesive editorial imagery); reveal full colour on hover */
  .m[class*="mm-tone-"] img{transition:filter .5s cubic-bezier(.2,.7,.2,1)}
  .m.mm-tone-mono img{filter:grayscale(1) contrast(1.04)}
  .m.mm-tone-cool img{filter:grayscale(.25) sepia(1) hue-rotate(168deg) saturate(2.3) brightness(.92) contrast(1.05)}
  .m.mm-tone-warm img{filter:grayscale(.2) sepia(.7) saturate(1.3) brightness(1.02)}
  .m.mm-tone-soft img{filter:grayscale(.55) contrast(1.02)}
  .m[class*="mm-tone-"]:hover img{filter:none}
  @media(prefers-reduced-motion:reduce){.m[class*="mm-tone-"] img{transition:none}}
  /* ── image presentation frames (rounded/tilt/browser/phone) + floating glass badges ── */
  .mm-decobox{display:block;position:relative}
  .mm-decobox img{display:block}
  .m.mm-deco-rounded .mm-decobox img{border-radius:22px;box-shadow:0 30px 70px -18px rgba(var(--mm-accent-rgb,138,43,98),.35)}
  .m.mm-deco-tilt .mm-decobox{transform:rotate(-2.5deg);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
  .m.mm-deco-tilt .mm-decobox::before{content:"";position:absolute;inset:0;transform:rotate(4.5deg);border-radius:26px;background:rgba(var(--mm-accent-rgb,138,43,98),.14)}
  .m.mm-deco-tilt .mm-decobox img{position:relative;border-radius:22px;box-shadow:0 30px 70px -18px rgba(var(--mm-accent-rgb,138,43,98),.35)}
  .m.mm-deco-tilt:hover .mm-decobox{transform:rotate(0)}
  .m.mm-deco-browser .mm-decobox{background:#fff;border-radius:16px;box-shadow:0 34px 80px -20px rgba(var(--mm-accent-rgb,138,43,98),.4)}
  .m.mm-deco-browser .mm-chrome{display:flex;align-items:center;gap:6px;height:38px;padding:0 16px;background:linear-gradient(#f8fafc,#eef2f7);border-radius:16px 16px 0 0;border-bottom:1px solid #e2e8f0}
  .m.mm-deco-browser .mm-chrome i{width:11px;height:11px;border-radius:50%;background:#f87171}
  .m.mm-deco-browser .mm-chrome i:nth-child(2){background:#fbbf24}
  .m.mm-deco-browser .mm-chrome i:nth-child(3){background:#34d399}
  .m.mm-deco-browser .mm-decobox img{border-radius:0 0 16px 16px}
  .m.mm-deco-phone .mm-decobox{background:#111527;border-radius:clamp(30px,4.5vw,44px);padding:12px;box-shadow:0 34px 80px -20px rgba(17,21,39,.5)}
  .m.mm-deco-phone .mm-decobox::after{content:"";position:absolute;top:24px;left:50%;transform:translateX(-50%);width:88px;height:22px;border-radius:999px;background:#111527;z-index:2}
  .m.mm-deco-phone .mm-decobox img{border-radius:clamp(20px,3.4vw,32px)}
  .mm-ibadge{position:absolute;z-index:3;display:inline-flex;align-items:center;font-family:var(--body);font-weight:700;font-size:.8rem;line-height:1.3;color:#1f2937;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.65);padding:.48rem .85rem;border-radius:999px;box-shadow:0 12px 30px rgba(15,23,42,.2);white-space:nowrap;max-width:min(80%,270px);overflow:hidden;text-overflow:ellipsis}
  .mm-ibadge::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--mm-accent,#e6529e),var(--mm-accent3,#ff7eb3));margin-right:.45rem}
  .mm-ib-tl{top:16px;left:-12px}.mm-ib-tr{top:16px;right:-12px}.mm-ib-bl{bottom:16px;left:-12px}.mm-ib-br{bottom:16px;right:-12px}
  @media(max-width:600px){.mm-ib-tl,.mm-ib-bl{left:8px}.mm-ib-tr,.mm-ib-br{right:8px}}
  /* ── entrance stagger: hero content glides in on page load (opt-in per section) ── */
  .band.mm-entrance>.wrap .col>.m{opacity:0;animation:mmentr .75s cubic-bezier(.16,1,.3,1) .45s forwards}
  @keyframes mmentr{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(1){animation-delay:0.05s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(2){animation-delay:0.14s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(3){animation-delay:0.23s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(4){animation-delay:0.32s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(5){animation-delay:0.41s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(6){animation-delay:0.50s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(7){animation-delay:0.59s}
  .band.mm-entrance>.wrap .col:nth-child(1)>.m:nth-child(8){animation-delay:0.68s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(1){animation-delay:0.27s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(2){animation-delay:0.36s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(3){animation-delay:0.45s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(4){animation-delay:0.54s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(5){animation-delay:0.63s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(6){animation-delay:0.72s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(7){animation-delay:0.81s}
  .band.mm-entrance>.wrap .col:nth-child(2)>.m:nth-child(8){animation-delay:0.90s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(1){animation-delay:0.49s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(2){animation-delay:0.58s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(3){animation-delay:0.67s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(4){animation-delay:0.76s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(5){animation-delay:0.85s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(6){animation-delay:0.94s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(7){animation-delay:1.03s}
  .band.mm-entrance>.wrap .col:nth-child(3)>.m:nth-child(8){animation-delay:1.12s}
  @media(prefers-reduced-motion:reduce){.band.mm-entrance>.wrap .col>.m{animation:none;opacity:1}}
  /* form success modal (shown after submit; e.g. "go to the app") */
  .mm-formdone{position:fixed;inset:0;z-index:9600;background:rgba(20,12,24,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:5vw;animation:mmfadein .25s ease}
  .mm-formdone-card{position:relative;background:#fff;border-radius:8px;padding:clamp(1.8rem,4vw,2.8rem);max-width:460px;width:100%;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.35)}
  .mm-formdone-card h3{font-size:1.5rem;margin:.2rem 0 .6rem}
  .mm-formdone-card p{color:var(--primary);opacity:.85;margin:0 0 1.5rem}
  .mm-formdone-card .btn{display:inline-block}
  .mm-formdone-x{position:absolute;top:.7rem;right:.9rem;border:0;background:none;font-size:1.6rem;line-height:1;color:#475569;cursor:pointer}
  .mm-formdone-x:hover{color:#0f172a}
  @keyframes mmfadein{from{opacity:0}to{opacity:1}}
  .mm-gradtext{background:var(--mm-grad-text,linear-gradient(105deg,#e6529e,#b5179e,#ff7eb3));-webkit-background-clip:text;background-clip:text;color:transparent}
  .mm-pill{display:inline-flex;align-items:center;font-weight:700;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brand,#c43d83);background:#fff;border:1px solid rgba(var(--mm-accent-rgb,138,43,98),.16);padding:.5rem .9rem;border-radius:999px;box-shadow:0 6px 18px rgba(var(--mm-accent-rgb,214,64,140),.12)}
  .mm-pill::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--mm-accent,#e6529e),var(--mm-accent3,#ff7eb3));margin-right:.5rem;flex:none}
  ul.mm-check{list-style:none;padding:0;margin:.7rem 0}
  ul.mm-check li{position:relative;padding-left:1.8rem;margin:.5rem 0;line-height:1.5}
  ul.mm-check li::before{content:"✓";position:absolute;left:0;top:0;color:var(--brand,#c43d83);font-weight:800}
  /* utility-fontrollen (theme.utility_font): kickers, koder, bildetekster, tall */
  :root{--mm-font-utility:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace}
  .mm-mono{font-family:var(--mm-font-utility);font-weight:500;letter-spacing:0.14em}
  /* nav_social/footer_social (#131): runde some-ikonknapper, arver flatens farge */
  .mm-some{display:inline-flex;align-items:center;gap:.55rem}
  .mm-some-kn{width:36px;height:36px;border-radius:50%;border:1.5px solid currentColor;display:inline-flex;align-items:center;justify-content:center;color:inherit;opacity:.8;transition:opacity .2s,transform .2s;text-decoration:none;font-size:1.05rem}
  .mm-some-kn:hover{opacity:1;transform:translateY(-1px)}
  .mm-some-nav{margin-left:.9rem}
  @media(max-width:820px){.mm-some-nav{display:none}}
  .mm-some-footer{flex-basis:100%;justify-content:center;margin:.2rem 0 .8rem}
  /* signaturmerke (#127): hårstrek brutt på kundens segl + mikro-caps-linje */
  .mm-sigmerke{text-align:center}
  .mm-sigmerke-rad{display:flex;align-items:center;gap:.9em}
  .mm-sigmerke-rad i{flex:1;border-top:1px solid var(--sml,currentColor);opacity:.35}
  .mm-sigmerke-rad img{flex:none;display:block}
  .mm-sigmerke-tekst{display:block;margin-top:.5em;font-size:.68rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;opacity:.75}
  /* prisliste (#128): gravert liste — prikkleder + tabulære tall */
  .mm-tabnum{font-variant-numeric:tabular-nums}
  .mm-pl-gruppe{margin:0 0 1.9rem}
  .mm-pl-gruppe:last-child{margin-bottom:0}
  .mm-pl-tittel{margin:.9em 0 .35em}
  .mm-pl-rad{display:flex;align-items:baseline;gap:.7em;padding:.48em 0}
  /* #133: ETT streksystem om gangen — dots gir luft, none/begge gir radlinjer */
  .mm-pl-dots .mm-pl-rad{padding:.62em 0}
  .mm-pl-linjer .mm-pl-rad+.mm-pl-rad,.mm-pl-begge .mm-pl-rad+.mm-pl-rad{border-top:1px solid rgba(127,127,127,.14)}
  .mm-pl-navn{flex:0 1 auto;min-width:0}
  .mm-pl-note{display:block;font-size:.8rem;opacity:.65;margin-top:.1em}
  .mm-pl-leder{flex:1 1 2em;min-width:2em;border-bottom:2px dotted currentColor;opacity:.42;transform:translateY(-.28em)}
  .mm-pl-luft{flex:1 1 2em}
  .mm-pl-pris{flex:none;white-space:nowrap;font-weight:600}
  .mm-pl-pris small{font-weight:400;font-size:.78em;opacity:.7}
  /* marquee (tiltak 9): rullende merkebånd — sømløs løkke via to identiske halvdeler */
  .mm-marquee{overflow:hidden;white-space:nowrap;font-family:var(--heading);line-height:1.05}
  .mm-mq-spor{display:inline-flex;animation:mmMarquee var(--mqd,30s) linear infinite;will-change:transform}
  .mm-mq-halv{display:inline-flex;flex:none}
  .mm-mq-halv>span{display:inline-flex;align-items:center}
  .mm-mq-halv i{font-style:normal;opacity:.4;padding:0 .45em}
  .mm-mq-s{font-size:clamp(1.1rem,2.6vw,1.7rem)}
  .mm-mq-m{font-size:clamp(1.7rem,4.5vw,3rem)}
  .mm-mq-l{font-size:clamp(2.6rem,8vw,6rem)}
  .mm-mq-xl{font-size:clamp(3.4rem,12vw,9.5rem)}
  @keyframes mmMarquee{to{transform:translateX(-50%)}}
  @media(prefers-reduced-motion:reduce){.mm-mq-spor{animation:none}}
  .mm-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  /* vannmerke (tiltak 9): ghost-tall/-ord som lag — alfa på INDRE element (L#87) */
  .mm-vannmerke{pointer-events:none;user-select:none;overflow:hidden}
  .mm-vannmerke-i{display:inline-block;font-family:var(--heading);line-height:.8;letter-spacing:-.02em;white-space:nowrap}
  .mm-vannmerke-bilde img{width:var(--vmw,40%);max-width:100%;height:auto;opacity:var(--vmop,.07);display:inline-block}
  .mm-vannmerke.mm-vm-lag{position:absolute;z-index:0;margin:0;overflow:visible;width:var(--vmw,40%);max-width:60%}
  .mm-vannmerke.mm-vm-lag img{width:100%}
  .mm-vm-lag.mm-vm-right{right:0}.mm-vm-lag.mm-vm-left{left:0}.mm-vm-lag.mm-vm-center{left:50%;transform:translateX(-50%)}
  .mm-vm-lag.mm-vm-bottom{bottom:0}.mm-vm-lag.mm-vm-top{top:0}
  .mm-vm-lag.mm-vm-klipp.mm-vm-right{right:calc(var(--vmw,40%) * -.28)}.mm-vm-lag.mm-vm-klipp.mm-vm-left{left:calc(var(--vmw,40%) * -.28)}
  .mm-vm-lag.mm-vm-klipp.mm-vm-bottom{bottom:calc(var(--vmw,40%) * -.22)}.mm-vm-lag.mm-vm-klipp.mm-vm-top{top:calc(var(--vmw,40%) * -.22)}
  section.band:has(.mm-vm-lag){position:relative;overflow:hidden}
  section.band:has(.mm-vm-lag)>.wrap{position:relative;z-index:1}
  .mm-vm-lag+*{position:relative;z-index:1}
  /* kollasje (tiltak 9): hovedbilde + overlappende lite bilde + kvadrat-badge.
     padding-bottom gir sonen det lille bildet overlapper ned i. */
  .mm-kollasje{position:relative;padding-bottom:11%}
  .mm-kollasje-hoved{width:82%;aspect-ratio:var(--kolasp,4/3);overflow:hidden;position:relative}
  /* badge per bilde (#244) — .mm-kollasje-liten er alt absolutt plassert og er sin egen ramme */
  .mm-kollasje-bb{position:absolute;left:0;bottom:0;padding:.5em .7em;font-family:var(--mm-font-utility,var(--body));font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1;z-index:1}
  .mm-kollasje-hoved img,.mm-kollasje-liten img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-kollasje-liten{position:absolute;bottom:0;width:44%;aspect-ratio:1/1;border:6px solid var(--kolr,#fff);box-shadow:0 18px 44px rgba(10,14,22,.18)}
  .mm-kollasje-hoyre .mm-kollasje-liten{right:0}
  .mm-kollasje-venstre .mm-kollasje-hoved{margin-left:auto}
  .mm-kollasje-venstre .mm-kollasje-liten{left:0}
  .mm-kollasje-badge{position:absolute;top:-13px;padding:.6em .85em;font-family:var(--mm-font-utility,var(--body));font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1}
  .mm-kollasje-hoyre .mm-kollasje-badge{left:-10px}
  .mm-kollasje-venstre .mm-kollasje-badge{right:-10px}
  /* måldraget (#120): divider med endeticks + etikett på linjen (byggetegning) */
  .mm-maal{display:flex;align-items:center;gap:.55em}
  .mm-maal-tick{flex:none;width:var(--mdh,1px);height:var(--mdt,8px);background:var(--mdc,#e2e8f0)}
  .mm-maal-strek{flex:1 1 auto;border-top:var(--mdh,1px) solid var(--mdc,#e2e8f0)}
  .mm-maal-label{flex:0 1 auto;font-size:.74rem;letter-spacing:.05em;line-height:1.35}
  .mm-maal-mono{font-family:var(--mm-font-utility,ui-monospace,'SF Mono',Menlo,monospace)}
  /* bildetekst UNDER enkeltbilde (image.caption — forankrer ekte kundebilder) */
  .mm-imgcaption{display:block;font-size:.82rem;line-height:1.45;color:var(--mm-caption,#64748b);margin-top:.45rem}
  .ondark .mm-imgcaption{color:rgba(255,255,255,.82)}
  /* NAP-topplinje over hovednav (theme.nav_topbar) */
  .mm-topbar{display:flex;justify-content:center;flex-wrap:wrap;gap:.35rem 1.6rem;padding:.42rem 20px;font-size:.78rem;line-height:1.4}
  .mm-topbar a{text-decoration:none}
  .mm-topbar a:hover{text-decoration:underline}
  .mm-topbar .bi{opacity:.75;margin-right:.15rem}
  @media(max-width:767px){.mm-topbar-skjulmobil{display:none}}
  /* før/etter-slider (beforeafter — produktbeviset for transformasjonsfag) */
  .mm-ba{position:relative;overflow:hidden;line-height:0;border-radius:10px;--ba:55%;aspect-ratio:var(--baar,3/2);display:block}
  .mm-ba img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-ba .mm-ba-etter{position:absolute;inset:0}
  .mm-ba .mm-ba-etter img{position:absolute;inset:0;height:100%;object-fit:cover;clip-path:inset(0 0 0 var(--ba))}
  .mm-ba .mm-ba-linje{position:absolute;top:0;bottom:0;left:var(--ba);width:2px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.55);pointer-events:none}
  .mm-ba .mm-ba-linje::after{content:"‹ ›";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;color:#1f2937;font:700 .72rem/1 sans-serif;letter-spacing:-1px;padding:.5rem .45rem;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.35);white-space:nowrap}
  /* touch-action:pan-y (ikke none): range-en dekker HELE bildet, så «none» gjorde
     modulen til en scroll-dødsone på mobil — startet fingeren der, satt siden fast
     (funn 26.8). pan-y slipper vertikal scroll gjennom, dragingen er horisontal. */
  .mm-ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;-webkit-appearance:none;touch-action:pan-y}
  .mm-ba .mm-ba-lbl{position:absolute;top:10px;font:600 .72rem/1 var(--body);letter-spacing:.04em;text-transform:uppercase;color:#fff;background:rgba(15,20,28,.62);padding:.32rem .6rem;border-radius:999px;pointer-events:none}
  .mm-ba .mm-ba-lbl.for{left:10px}
  .mm-ba .mm-ba-lbl.etter{right:10px}
  /* stegvis skjema (mode:"steg", #76): ett steg synlig om gangen; alt synlig uten JS */
  html.js .ucform.mm-steg .mm-fsteg{display:none}
  html.js .ucform.mm-steg .mm-fsteg.on{display:block}
  html.js .ucform.mm-steg:not(.mm-steg-siste) [type=submit]{display:none}
  html.js .ucform.mm-steg:not(.mm-steg-siste) .cf-turnstile{display:none}
  .mm-fprog{display:flex;gap:.45rem;margin:0 0 1rem}
  .mm-fprog i{width:9px;height:9px;border-radius:50%;background:currentColor;opacity:.22;transition:opacity .25s}
  .mm-fprog i.on{opacity:1}
  .ucform .mm-fnext{margin:.4rem 0 0;cursor:pointer}
  /* fargeprøve-brikke foran skjemaetikett (fields[].chip.swatch) */
  .mm-fchip{display:inline-block;width:.85em;height:.85em;border-radius:3px;margin-right:.45em;vertical-align:-.08em;border:1px solid rgba(0,0,0,.18)}
  /* dekningssone på kart (map.sone): sirkel sentrert på adressen + etikett + steds-chips */
  .mm-mapwrap{position:relative;display:block;overflow:hidden;line-height:0}
  /* max-width (hindring #138, norsk-bygg): sonens geometri (radius/zoom) kunne gi 93px
     horisontal overflyt på 390px-viewport — ringen og etiketten klippes til containeren */
  .mm-mapsone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:2;max-width:100%;box-sizing:border-box}
  .mm-mapsone-lbl{position:absolute;left:50%;top:24px;transform:translateX(-50%);color:#fff;font:600 .75rem/1.2 var(--body);padding:.3rem .7rem;border-radius:999px;pointer-events:none;z-index:3;white-space:nowrap;box-shadow:0 4px 14px rgba(0,0,0,.25);max-width:calc(100% - 12px);box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}
  .mm-mappunkter{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem;line-height:1.3}
  .mm-mappunkter span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:.25rem .7rem;font-size:.8rem;color:#334155}
  /* finn-lager (finnlager): kortgrid fra kundens egen Finn-butikk, SOLGT-badge */
  .mm-fl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.1rem}
  .mm-fl-kort{border:1px solid rgba(127,127,127,.22);border-radius:12px;overflow:hidden;background:#fff;color:#1c2430}
  .mm-fl-bilde{position:relative;aspect-ratio:3/2;overflow:hidden}
  .mm-fl-bilde img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-fl-solgt{position:absolute;top:10px;left:10px;background:#1c2430;color:#fff;font:700 .72rem/1 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px}
  .mm-fl-kort.solgt .mm-fl-bilde img{filter:grayscale(1);opacity:.75}
  .mm-fl-body{padding:.9rem 1rem 1.1rem}
  .mm-fl-navn{margin:0 0 .25rem;font-size:1.02rem;font-weight:700;color:#1c2430}
  .mm-fl-annonse{color:inherit;text-decoration:none;display:block}
  .mm-fl-annonse:hover img{opacity:.92}
  h3 .mm-fl-annonse:hover{text-decoration:underline;text-underline-offset:3px}
  .mm-fl-pris{margin:0 0 .2rem;font-weight:800;font-size:1.15rem;font-variant-numeric:tabular-nums;color:#1c2430}
  .mm-fl-fakta{margin:0 0 .7rem;font-size:.82rem;opacity:.75;font-family:var(--mm-font-utility,var(--body))}
  .mm-fl-cta{display:block;text-align:center;margin:0 0 .45rem}
  .mm-fl-cta2{display:block;text-align:center;font-size:.88rem;color:#1c2430;text-decoration:underline;text-underline-offset:3px}
  /* mørke bånd (#112 pkt 3): kortene følger flaten — samme klasse feil som infokort/faq hadde */
  section.band.ondark .mm-fl-kort{background:#171A1F;border-color:rgba(255,255,255,.14);color:#f5f6f8}
  section.band.ondark .mm-fl-kort :is(.mm-fl-navn,.mm-fl-pris,.mm-fl-cta2){color:#f5f6f8}
  section.band .mm-fl.lys .mm-fl-kort{background:#fff;border-color:rgba(127,127,127,.22);color:#1c2430}
  section.band .mm-fl.lys .mm-fl-kort :is(.mm-fl-navn,.mm-fl-pris,.mm-fl-cta2){color:#1c2430}
  .mm-fl-solgttittel{margin:1.4rem 0 .6rem;font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;opacity:.7}
  .mm-fl-solgtgrid .mm-fl-kort{opacity:.85}
  .mm-fl-lenke{margin:.9rem 0 0;font-size:.88rem}
  /* lydavspiller (audio): play-chip i sidens uttrykk — trekant/pauselinjer tegnes i CSS */
  .mm-audio .mm-audio-t{margin:0 0 .4rem;font-weight:600;font-size:.92rem}
  .mm-au-chip{display:inline-flex;align-items:center;gap:.6em;border:0;cursor:pointer;font:600 .9rem/1.2 var(--body);color:#fff;background:var(--auc,var(--mm-accent,#2563eb));border-radius:999px;padding:.65rem 1.2rem .65rem .9rem;box-shadow:0 8px 24px rgba(0,0,0,.18)}
  .mm-au-chip .mm-au-ikon{flex:none;width:0;height:0;border-style:solid;border-width:7px 0 7px 11px;border-color:transparent transparent transparent currentColor}
  .mm-au-chip.spiller .mm-au-ikon{width:11px;height:14px;border:0;border-left:4px solid currentColor;border-right:4px solid currentColor}
  /* booking-forespørsel (booking): tjenestekort, tidsluke-knapper, valgt luke i aksent */
  .mm-bk .mm-bk-tjl{display:flex;flex-direction:column;gap:.45rem;margin:0 0 .9rem}
  .mm-bk .mm-bk-tj{display:flex;align-items:center;gap:.6rem;border:1px solid rgba(127,127,127,.3);border-radius:10px;padding:.65rem .85rem;cursor:pointer}
  .mm-bk .mm-bk-tj:has(input:checked){border-color:var(--mm-accent,#2563eb);box-shadow:inset 0 0 0 1px var(--mm-accent,#2563eb)}
  .mm-bk .mm-bk-tjn{font-weight:600}
  .mm-bk .mm-bk-tjp{margin-left:auto;font-size:.82rem;opacity:.75;white-space:nowrap;font-family:var(--mm-font-utility,var(--body))}
  .mm-bk .mm-bk-luker{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 .9rem;transition:outline .2s;outline:2px solid transparent;outline-offset:4px;border-radius:8px}
  .mm-bk .mm-bk-luker.mm-bk-mangler{outline-color:#dc2626}
  .mm-bk .mm-bk-luke{border:1px solid rgba(127,127,127,.35);background:transparent;color:inherit;border-radius:8px;padding:.5rem .8rem;cursor:pointer;font:inherit;font-variant-numeric:tabular-nums}
  .mm-bk .mm-bk-luke.on{background:var(--mm-accent,#2563eb);border-color:var(--mm-accent,#2563eb);color:#fff}
  .mm-bk .mm-bk-hint,.mm-bk .mm-bk-stengt{font-size:.85rem;opacity:.75;margin:.2rem 0 .6rem}
  .mm-bk .mm-bk-stengt{color:#dc2626;opacity:1}
  .mm-bk .mm-bk-sum{font-size:.9rem;margin:0 0 .9rem}
  .mm-bk .mm-bk-note{font-size:.8rem;opacity:.7;margin:.6rem 0 0}
  /* sammenligningsmatrise (sammenlign): leses PÅ TVERS per rad; mobil = én blokk per rad */
  .mm-cmp{display:grid;grid-template-columns:minmax(130px,1.15fr) repeat(var(--cmpn,3),1fr);border:1px solid rgba(127,127,127,.28);border-radius:12px;overflow:hidden;font-size:.95rem;line-height:1.45}
  .mm-cmp-row{display:contents}
  .mm-cmp-h,.mm-cmp-lbl,.mm-cmp-c{padding:.72rem .95rem;border-top:1px solid rgba(127,127,127,.18)}
  .mm-cmp-head .mm-cmp-h,.mm-cmp-head .mm-cmp-lbl{border-top:0}
  .mm-cmp-h{font-weight:700}
  .mm-cmp-lbl{font-weight:600;font-family:var(--mm-font-utility,var(--body));font-size:.8rem;letter-spacing:.03em;opacity:.9}
  .mm-cmp-h.hl,.mm-cmp-c.hl{background:rgba(var(--mm-accent-rgb),.08);box-shadow:inset 2px 0 0 var(--mm-accent,#DC2626),inset -2px 0 0 var(--mm-accent,#DC2626)}
  .mm-cmp-tag{display:block;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--mm-accent,#DC2626);font-weight:700;margin-bottom:.18rem}
  .mm-cmp-kilde{margin:.6rem 0 0;font-size:.78rem;opacity:.7}
  @media(max-width:820px){
    .mm-cmp{display:block;border:0;border-radius:0;overflow:visible}
    .mm-cmp-row{display:block;border:1px solid rgba(127,127,127,.28);border-radius:12px;margin:0 0 .9rem;overflow:hidden}
    .mm-cmp-head{display:none}
    .mm-cmp-lbl{display:block;background:rgba(127,127,127,.12);border-top:0}
    .mm-cmp-c{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid rgba(127,127,127,.16)}
    .mm-cmp-c::before{content:attr(data-kol);font-weight:600;opacity:.75;text-align:left}
    .mm-cmp-c.hl{box-shadow:inset 3px 0 0 var(--mm-accent,#DC2626)}
  }
  /* klokkeslettstyrt åpent/stengt-kicker (openstatus) — server-rendret, status-dot i grønt/rødt */
  .mm-openstatus{display:inline-flex;align-items:center;gap:.55em;font:600 .85rem/1.3 var(--mm-font-utility,var(--body));letter-spacing:.06em;text-transform:uppercase}
  .mm-openstatus .mm-os-dot{flex:none;width:.6em;height:.6em;border-radius:50%;background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.18)}
  .mm-openstatus.stengt .mm-os-dot{background:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.18)}
  /* premium button styles (gradient / glass) + inline grouping */
  .btn.btn--grad,.btn.btn--glass{font-size:1rem;padding:.95rem 1.5rem;border-radius:3px}
  .btn.btn--grad{background:linear-gradient(105deg,var(--btnbg),var(--btnbg2,#c43d83));border:0;box-shadow:0 12px 30px rgba(var(--mm-accent-rgb,138,43,98),.32);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s}
  .btn.btn--grad:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(var(--mm-accent-rgb,138,43,98),.42)}
  .btn.btn--glass{background:rgba(255,255,255,.7);color:var(--btnbg);border:1.5px solid rgba(var(--mm-accent-rgb,138,43,98),.18);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .25s,background .25s,box-shadow .25s}
  .btn.btn--glass:hover{background:#fff;color:var(--btnbg);transform:translateY(-3px);box-shadow:0 14px 30px rgba(var(--mm-accent-rgb,138,43,98),.16)}
  .ondark .btn.btn--glass{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.42)}
  .ondark .btn.btn--glass:hover{background:rgba(255,255,255,.28);color:#fff}
  /* Knapp-flip (hindring #166): knappflate ~= båndfarge → hvit flate, merkefarget
     tekst. Inline-stil (button-modulens bg / skjemaets submit_bg) vinner alltid. */
  section.band.mm-btnflip .btn:not(.btn--glass):not([style*=background]){background:#fff;color:var(--brand);border-color:#fff}
  section.band.mm-btnflip .btn:not(.btn--glass):not([style*=background]):hover{background:#eef1f4;color:var(--brand)}
  .m.mm-btn-inline{display:inline-block;vertical-align:middle;margin:.3rem .35rem}
  .col:has(> .m.mm-btn-inline){text-align:center}
  @media(prefers-reduced-motion:reduce){.btn.btn--grad,.btn.btn--glass{transition:none}.btn.btn--grad:hover,.btn.btn--glass:hover{transform:none}}
  /* icon chip (rounded gradient square behind an icon) */
  .mm-icchip{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:16px;background:var(--mm-chip-bg,linear-gradient(135deg,#fde0ee,#f7cfe1))}
  /* eget ikon som bilde i ikonrollen (#248): samme plass som Bootstrap-ikonet */
  .mm-ikonbilde{display:inline-block;height:auto;max-width:100%}
  .mm-ikonbilde-b{display:inline-flex;align-items:center;justify-content:center;max-width:100%}
  .mm-ikonbilde-b img{display:block;width:100%;height:auto}
  .mm-icchip-bilde{width:auto;height:auto;padding:14px}
  /* number badge module */
  .m.mm-numbadge{display:flex}
  .m.mm-numbadge.center{justify-content:center}.m.mm-numbadge.right{justify-content:flex-end}
  .mm-numbadge-b{display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:56px;padding:0 .55rem;border-radius:16px;font-family:var(--heading);font-weight:600;font-size:1.55rem;color:#ffffff;background:linear-gradient(135deg,var(--btnbg,#e6529e),var(--btnbg2,#c43d83));box-shadow:0 12px 26px rgba(var(--mm-accent-rgb,138,43,98),.3)}
  /* framed section: the content becomes a rounded, shadowed panel (bg moves onto the panel) */
  .band.mm-framed{background:transparent !important}
  .band.mm-framed>.wrap>.row{border-radius:30px;padding:clamp(40px,6vw,84px) clamp(24px,5vw,60px) !important;box-shadow:0 36px 90px rgba(var(--mm-accent-rgb,138,43,98),.28);position:relative;overflow:hidden;background-size:cover;background-position:center}
  /* card appearance for a column (soft = shadow, glass = frosted). Inline column colour still wins. */
  .col.mm-card{background:#fff;border-radius:8px;padding:clamp(1.6rem,2.8vw,2.4rem);height:100%;position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
  .col.mm-card.mm-card-top::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--mm-grad-stripe,linear-gradient(90deg,#e6529e,#ff7eb3,#ffd6a5))}
  .col.mm-card.mm-card-soft{box-shadow:0 12px 34px rgba(0,0,0,.07);border:1px solid rgba(0,0,0,.05)}
  .col.mm-card.mm-card-glass{background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 60px rgba(var(--mm-accent-rgb,138,43,98),.12)}
  .col.mm-card:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(var(--mm-accent-rgb,138,43,98),.16)}
  @media(prefers-reduced-motion:reduce){.col.mm-card{transition:none}.col.mm-card:hover{transform:none}}
  /* a card inside a .cards grid: restore its inner padding (the grid sets .col{padding:0}, which is more specific) */
  section.band.cards>.wrap>.row>.col.mm-card{padding:clamp(1.5rem,2.6vw,2.2rem)}
  /* two side-by-side cards in a normal (non-grid) row: give them a real gutter (the card padding ate the column gutter) */
  .band:not(.cards):not(.dualbg)>.wrap>.row:has(>.col.mm-card + .col.mm-card){gap:1.5rem;margin-left:0;margin-right:0}
  /* side-by-side only on desktop; on mobile the columns fall back to full width (.col flex:1 1 100%) and stack */
  @media(min-width:768px){ .band:not(.cards):not(.dualbg)>.wrap>.row:has(>.col.mm-card + .col.mm-card)>.col{flex:1 1 0;max-width:none} }
  html.js .mm-reveal>.wrap>.row>.col{opacity:0;transform:translateY(22px)}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col:nth-child(2){transition-delay:.09s}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col:nth-child(3){transition-delay:.18s}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col:nth-child(4){transition-delay:.27s}
  /* reveal_stagger (bygger-gap #47): modulene i seksjonen avsløres én og én —
     f.eks. samtalebobler der responstiden bevises av formen. */
  html.js .mm-reveal.mm-rstag>.wrap>.row>.col>.m{opacity:0;transform:translateY(16px)}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(1){transition-delay:0.12s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(2){transition-delay:0.34s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(3){transition-delay:0.56s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(4){transition-delay:0.78s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(5){transition-delay:1.00s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(6){transition-delay:1.22s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(7){transition-delay:1.44s}
  html.js .mm-reveal.mm-rstag.mm-seen>.wrap>.row>.col>.m:nth-child(8){transition-delay:1.66s}
  @media(prefers-reduced-motion:reduce){html.js .mm-reveal.mm-rstag>.wrap>.row>.col>.m{opacity:1;transform:none}}
  /* reveal_stagger_ms (#129): kolonnene (kortene) våkner én og én med valgt takt */
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(1){transition-delay:calc(0*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(2){transition-delay:calc(1*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(3){transition-delay:calc(2*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(4){transition-delay:calc(3*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(5){transition-delay:calc(4*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(6){transition-delay:calc(5*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(7){transition-delay:calc(6*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-rstagk.mm-seen>.wrap>.row>.col:nth-child(8){transition-delay:calc(7*var(--rsms,70ms) + 60ms)}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col:nth-child(5){transition-delay:.36s}
  html.js .mm-reveal.mm-seen>.wrap>.row>.col:nth-child(6){transition-delay:.45s}
  @media(prefers-reduced-motion:reduce){html.js .mm-reveal>.wrap>.row>.col{opacity:1;transform:none}}
  header.site{position:sticky;top:0;z-index:50;background:#ffffff;border-bottom:1px solid #e1dacd;will-change:transform}
  /* Menyraden følger scrollen piksel for piksel (JS setter transform direkte):
     den skyves gradvis ut mens man leser nedover og trekkes like gradvis inn
     igjen når man scroller opp. Transition brukes KUN når den må hoppe på eget
     initiativ — meny åpnes, ankerhopp — ellers ville den henge etter fingeren. */
  header.site.mm-nav-glatt{transition:transform .25s cubic-bezier(.4,0,.2,1)}
  @media(prefers-reduced-motion:reduce){header.site.mm-nav-glatt{transition:none}}
  header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding:32px 20px;gap:1rem}
  /* width_mobil (#76): egen bildebredde per flate — desktopverdien er ellers hard også på mobil */
  [style*="--imw-desk"]{--imw:var(--imw-desk)}
  @media(max-width:820px){[style*="--imw-mob"]{--imw:var(--imw-mob)}}
  /* icon_mobil (#66): annet ikon under 820px (pil-høyre → pil-ned ved stabling) */
  .mm-ico-mob{display:none!important}
  @media(max-width:820px){.mm-ico-mob{display:inline-block!important}.mm-ico-desk{display:none!important}}
  .logo{font-family:var(--heading);font-weight:700;font-size:1.25rem;color:var(--brand);text-decoration:none}
  nav.main{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:center}
  nav.main a{color:#141b2e;text-decoration:none;font-size:.95rem}
  nav.main a:hover,nav.main a.active{color:#a81f24}
  nav.main a.active{color:#a81f24}
  nav.main a.active{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px;text-decoration-color:#a81f24}
  nav.main .submenu a.active{text-underline-offset:4px}
  .nav-phone{display:none;font-weight:600;white-space:nowrap;text-decoration:none;margin-left:10px}
  @media(min-width:1024px){.nav-phone{display:inline-block}}
  nav.main a.btn.nav-cta{color:#ffffff;font-weight:600;padding:.55rem 20px;height:auto;line-height:1.2;margin-left:6px}
  nav.main a.btn.nav-cta:hover{color:#ffffff}
  /* dropdown submenu (desktop: hover panel) */
  nav.main .navitem{position:relative;display:inline-flex;align-items:center;padding:.4rem 0}
  /* Undermeny-pil (systemfeil 4.9): ▾-glyfen satt for lavt i flere skrifter (glyfens egne metrikker).
     Nå en tegnet chevron sentrert på tekstens x-høyde — likt i alle skrifter og med versaler. */
  nav.main .caret{display:inline-flex;align-items:center;font-size:.62em;margin-left:.35em;opacity:.85;vertical-align:middle;position:relative;top:-.05em;line-height:1}
  nav.main .caret svg{display:block}
  nav.main .submenu{display:none;position:absolute;top:100%;left:-.6rem;min-width:250px;background:#ffffff;box-shadow:0 10px 28px rgba(0,0,0,.2);border-radius:0 0 8px 8px;padding:.3rem 0;z-index:60}
  /* :focus-within er nødvendig for tastatur: submenyen er display:none, så barna var
     ufokuserbare og undersidene helt uoppnåelige uten mus på desktop (WCAG 2.1.1). */
  nav.main .navitem.hassub:hover .submenu,nav.main .submenu:hover,nav.main .navitem.hassub:focus-within .submenu{display:block}
  nav.main .submenu a{display:block;padding:.55rem 1.1rem;white-space:nowrap;font-size:.9rem;text-transform:none;letter-spacing:0}
  nav.main .submenu a:hover{background:rgba(0,0,0,.12)}
  /* Checkboxen er visuelt skjult men FOKUSERBAR (display:none gjorde hele
     mobilmenyen tastatur-utilgjengelig — WCAG 2.1.1, rammet alle sider). */
  .navtoggle{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .navtoggle-label{display:none}
  .navtoggle:focus-visible~.navtoggle-label,.navtoggle:focus~.navtoggle-label{outline:2px solid currentColor;outline-offset:3px;border-radius:6px}
  header.site a.nav-cta-mob{display:none}
  /* nav_cta_label_mobile (#78): kortform under 520 px, fullform ellers */
  .nav-cta-mob .nc-kort{display:none}
  @media(max-width:520px){.nav-cta-mob .nc-full{display:none}.nav-cta-mob .nc-kort{display:inline}}
  /* Trangt, trinn 1 (#355 oppfølging, 1.10.2026): får ikke menyraden plass på én linje på PC, prøver skriptet først en
     tettere rad (bredere wrap på store skjermer, mindre logo og skrift). Holder ikke det, tar burgeren over (mm-trang). */
  header.site.mm-nav-tett .wrap{max-width:1400px;gap:.6rem}
  header.site.mm-nav-tett .logo img{height:59px !important;width:auto}
  header.site.mm-nav-tett nav.main{gap:.85rem}
  header.site.mm-nav-tett nav.main a{font-size:.9rem}
  header.site.mm-nav-tett nav.main a.btn.nav-cta{padding:.45rem 14px}
  /* Mobilmenyen (burger) gjelder under brekkpunktet (theme.nav_brekk, standard 767 px), OG når menyraden ikke får plass
     på én linje på bredere skjermer: skriptet i 50-header-main setter header.site.mm-trang (#355, ekholt-agentur, 30.9.2026).
     Samme regler skrives derfor to ganger, fra samme kilde ($mobNav). */
  @media(max-width:767px){
    /* Header-duplikatet arvet temaets STORE knappehøyde (theme.btn_height, satt
       for hero-knappene) og ble unødig høyt i menyraden — den kompakte
       varianten setter sin egen, uavhengig av sidens knappehøyde. */
    header.site a.nav-cta-mob{display:inline-flex;align-items:center;order:3;margin-left:auto;padding:.5rem 14px;font-size:.82rem;line-height:1.2;white-space:nowrap;height:auto;min-height:40px}
    header.site .wrap:has(.nav-cta-mob) .langsw{margin-left:0}
    header.site .wrap:has(.nav-cta-mob) .logo img{max-width:40vw !important}
    /* Menyknappen er et TRYKKMÅL, ikke bare et tegn: 23x26 px var langt under
       44 px-minstemålet, og den klistret seg til CTA-en (8 px luft). Bredden
       er +56 % og høyden full touch-høyde; margin-left gir CTA-en pusterom. */
    .navtoggle-label{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;margin-left:8px;cursor:pointer;line-height:0;color:#141b2e;user-select:none;-webkit-tap-highlight-color:transparent}
    .navtoggle-label svg{display:block}
    nav.main{display:none;flex-direction:column;width:100%;gap:.25rem;padding:.5rem 0;align-items:stretch}
    nav.main a{padding:.6rem 0;border-top:1px solid #e1dacd}
    nav.main a.btn.nav-cta{margin:10px 0 2px;padding:.65rem 20px;text-align:center;border-top:0}
    nav.main .navitem{display:block;width:100%;padding:0}
    /* Skillelinje-buggen (Fuglset 12.8): forelder-lenken i .navitem er inline —
       border-top ble en kort strek på tekstbredden. Full bredde på lenken, og
       undermeny-barna mister egne linjer (gruppen leses som ETT menypunkt;
       blandede innrykk og doble streker mellom barn og neste toppunkt er borte). */
    nav.main .navitem>a{display:block}
    nav.main .caret{display:none}
    nav.main .submenu{display:block;position:static;box-shadow:none;background:transparent;padding:0 0 .2rem 1.1rem;min-width:0;border-radius:0}
    nav.main .submenu a{font-size:.88rem;opacity:.9;border-top:0;padding:.42rem 0}
    .navtoggle:checked ~ nav.main{display:flex}
    /* Herding (tronds-fella 16.8): åpen meny KREVER at raden wrapper — en
       head_code med flex-wrap:nowrap (satt for å holde logo+CTA+burger på én
       linje) klemte ellers hele menyen inn som smal kolonne ved siden av
       logoen. Åpen tilstand vinner alltid. */
    header.site .wrap:has(.navtoggle:checked){flex-wrap:wrap !important}
    header.site .wrap{flex-wrap:wrap;min-height:84px;padding:18px 20px}
    /* shrink logo on small screens so it + the menu button stay on one line */
    .logo img{height:56px !important;max-width:32vw !important}
    .navtoggle-label{flex:0 0 auto}
    /* språkvelgeren: logo | NO EN ES | burger på ÉN linje uten horisontal overflow */
    header.site .wrap{gap:.55rem}
    .langsw{order:4;margin-left:auto;padding-left:0;border-left:0;gap:0}
    .langsw a{font-size:.66rem;padding:.26rem .36rem;letter-spacing:.4px}
    .navtoggle-label{order:5}
    nav.main{order:6}
    header.site .wrap:has(.langsw) .logo img{max-width:44vw !important}
    header.site .wrap:has(.langsw) .logo .wm .nm{font-size:clamp(.82rem,3.9vw,1rem)}
  }
/* Header-duplikatet arvet temaets STORE knappehøyde (theme.btn_height, satt
     for hero-knappene) og ble unødig høyt i menyraden — den kompakte
     varianten setter sin egen, uavhengig av sidens knappehøyde. */
  header.site.mm-trang a.nav-cta-mob{display:inline-flex;align-items:center;order:3;margin-left:auto;padding:.5rem 14px;font-size:.82rem;line-height:1.2;white-space:nowrap;height:auto;min-height:40px}
  header.site.mm-trang .wrap:has(.nav-cta-mob) .langsw{margin-left:0}
  header.site.mm-trang .wrap:has(.nav-cta-mob) .logo img{max-width:40vw !important}
  /* Menyknappen er et TRYKKMÅL, ikke bare et tegn: 23x26 px var langt under
     44 px-minstemålet, og den klistret seg til CTA-en (8 px luft). Bredden
     er +56 % og høyden full touch-høyde; margin-left gir CTA-en pusterom. */
  header.site.mm-trang .navtoggle-label{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;margin-left:8px;cursor:pointer;line-height:0;color:#141b2e;user-select:none;-webkit-tap-highlight-color:transparent}
  header.site.mm-trang .navtoggle-label svg{display:block}
  header.site.mm-trang nav.main{display:none;flex-direction:column;width:100%;gap:.25rem;padding:.5rem 0;align-items:stretch}
  header.site.mm-trang nav.main a{padding:.6rem 0;border-top:1px solid #e1dacd}
  header.site.mm-trang nav.main a.btn.nav-cta{margin:10px 0 2px;padding:.65rem 20px;text-align:center;border-top:0}
  header.site.mm-trang nav.main .navitem{display:block;width:100%;padding:0}
  /* Skillelinje-buggen (Fuglset 12.8): forelder-lenken i .navitem er inline —
     border-top ble en kort strek på tekstbredden. Full bredde på lenken, og
     undermeny-barna mister egne linjer (gruppen leses som ETT menypunkt;
     blandede innrykk og doble streker mellom barn og neste toppunkt er borte). */
  header.site.mm-trang nav.main .navitem>a{display:block}
  header.site.mm-trang nav.main .caret{display:none}
  header.site.mm-trang nav.main .submenu{display:block;position:static;box-shadow:none;background:transparent;padding:0 0 .2rem 1.1rem;min-width:0;border-radius:0}
  header.site.mm-trang nav.main .submenu a{font-size:.88rem;opacity:.9;border-top:0;padding:.42rem 0}
  header.site.mm-trang .navtoggle:checked ~ nav.main{display:flex}
  /* Herding (tronds-fella 16.8): åpen meny KREVER at raden wrapper — en
     head_code med flex-wrap:nowrap (satt for å holde logo+CTA+burger på én
     linje) klemte ellers hele menyen inn som smal kolonne ved siden av
     logoen. Åpen tilstand vinner alltid. */
  header.site.mm-trang .wrap:has(.navtoggle:checked){flex-wrap:wrap !important}
  header.site.mm-trang .wrap{flex-wrap:wrap;min-height:84px;padding:18px 20px}
  /* shrink logo on small screens so it + the menu button stay on one line */
  header.site.mm-trang .logo img{height:56px !important;max-width:32vw !important}
  header.site.mm-trang .navtoggle-label{flex:0 0 auto}
  /* språkvelgeren: logo | NO EN ES | burger på ÉN linje uten horisontal overflow */
  header.site.mm-trang .wrap{gap:.55rem}
  header.site.mm-trang .langsw{order:4;margin-left:auto;padding-left:0;border-left:0;gap:0}
  header.site.mm-trang .langsw a{font-size:.66rem;padding:.26rem .36rem;letter-spacing:.4px}
  header.site.mm-trang .navtoggle-label{order:5}
  header.site.mm-trang nav.main{order:6}
  header.site.mm-trang .wrap:has(.langsw) .logo img{max-width:44vw !important}
  header.site.mm-trang .wrap:has(.langsw) .logo .wm .nm{font-size:clamp(.82rem,3.9vw,1rem)}
  @media(max-width:767px){
    /* single-column stacking: drop the grid's negative margins to avoid horizontal overflow */
    .row{margin-left:0;margin-right:0}
    .col{padding-left:0;padding-right:0}
  }
  @media(max-width:420px){ .logo img{height:56px !important} header.site .wrap{min-height:72px} }
  /* «clip», ikke «hidden»: overflow-x:hidden gjorde html/body til scroll-
     containere og slo dermed ut position:sticky på menyraden — den rullet
     bort som vanlig innhold i stedet for å bli liggende. clip stanser
     horisontal overflyt uten å lage scroll-container, så sticky overlever.
     Fallback for gamle nettlesere står først. */
  html,body{overflow-x:hidden}
  @supports (overflow-x:clip){html,body{overflow-x:clip}}
  section.band{padding:16px 0}
  /* theme.section_spacing: rytme som system (per-seksjons pt/pb overstyrer inline) */
  section.band{padding:104px 0}
  @media(max-width:820px){section.band{padding:64px 0}}
  section.band.full>.wrap{max-width:100%}
  /* settings.bleed (hindring #177.3): ekte kant-til-kant — nuller wrap-padding, radens gutter og
     kolonnepadding i samme regel (bare wrap alene ga 15 px horisontal overflyt). */
  section.band.mm-bleed>.wrap{max-width:100%;padding-left:0;padding-right:0}
  section.band.mm-bleed>.wrap>.row{margin-left:0;margin-right:0}
  section.band.mm-bleed>.wrap>.row>.col{padding-left:0;padding-right:0}
  /* Blandet rad (rormek #205): bildet går kant-til-kant, tekstkolonnen beholder luft mot skjermkanten. */
  section.band.mm-bleed>.wrap>.row>.col:not(:has(img,picture,video,iframe,.map,.mm-uts-kart,.gcarousel)){padding-left:15px;padding-right:15px}
  .mm-quotes{display:grid;gap:18px}
  .mm-quote{position:relative;margin:0;background:#fff;color:#1c2430;border-radius:14px;border-left:4px solid var(--mm-accent,#c8cbe0);padding:2.5rem 1.35rem 1.2rem 1.5rem;box-shadow:0 8px 26px rgba(15,20,40,.09);overflow:hidden}
  .mm-quote::before{content:'\201C';position:absolute;top:.1rem;left:.9rem;font-family:Georgia,'Times New Roman',serif;font-size:4.6rem;line-height:1;color:var(--mm-accent,#888);opacity:.22;pointer-events:none}
  .mm-quote blockquote{position:relative;margin:0 0 .95rem;font-size:1.16rem;line-height:1.6;font-style:italic}
  .mm-quote figcaption{font-size:.86rem;display:flex;flex-direction:column;gap:.12rem;padding-top:.65rem;border-top:1px solid #edeef4}
  .mm-quote figcaption strong{font-style:normal;font-size:.92rem}
  .mm-quote-kilde{color:#6a7280}
  /* quotes items[].jobb (#122): HVA jobben var — nest viktigst etter sitatet,
     egen linje med egen vekt (utility-fonten der den finnes) */
  .mm-quote-jobb{display:block;font-size:.8rem;font-weight:600;letter-spacing:.03em;color:#3d4653;font-family:var(--mm-font-utility,inherit);margin:.12rem 0 .05rem}
  @media(max-width:720px){.mm-quotes{grid-template-columns:1fr!important}}
  .mm-seasonwrap{text-align:center}
  .mm-seasonpill{display:inline-block;padding:.55rem 1.3rem;border-radius:999px;background:var(--mm-chip-bg,rgba(var(--mm-accent-rgb,138,43,98),.1));color:var(--mm-accent,var(--btnbg));font-weight:600;font-size:.95rem;letter-spacing:.01em}
  a.mm-seasonpill-lenke{text-decoration:none}
  a.mm-seasonpill-lenke:hover{filter:brightness(.92)}
  .mm-infokort{display:grid;gap:18px}
  .mm-infokort-i{background:#fff;color:#1c2430;border-radius:14px;padding:1.2rem 1.15rem;box-shadow:0 8px 26px rgba(15,20,40,.09);text-align:center}
  .mm-infokort-i h3{margin:.65rem 0 .35rem;font-size:1.02rem;font-weight:700}
  .mm-infokort-i .mm-icchip i{font-size:1.5rem}
  .mm-infokort-t{font-size:.92rem;line-height:1.55}
  .mm-infokort-t a{color:inherit;font-weight:600}
  a.mm-infokort-lenke{display:block;color:#1c2430;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}
  a.mm-infokort-lenke:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,20,40,.15)}
  @media(max-width:720px){.mm-infokort{grid-template-columns:1fr 1fr!important}}
  @media(max-width:460px){.mm-infokort{grid-template-columns:1fr!important}}
  .mm-stars.center{text-align:center}
  .mm-stars.right{text-align:right}
  .mm-stars-pill{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:.6rem;flex-wrap:wrap;background:#fff;color:#1c2430;border-radius:12px;padding:.55rem 1.15rem;box-shadow:0 6px 20px rgba(15,20,40,.14)}
  .mm-stars-rad{display:inline-flex;gap:.15rem}
  .mm-star{position:relative;width:1.25em;height:1.25em;display:inline-block;background:#d8d9e0;clip-path:polygon(50% 2%,61% 36%,98% 36%,68% 58%,79% 92%,50% 71%,21% 92%,32% 58%,2% 36%,39% 36%)}
  .mm-star-fyll{position:absolute;inset:0;background:#f5b301;width:0}
  .mm-stars-txt{font-weight:600}
  .mm-stars-txt a{color:inherit}
  .gallery .gitem{position:relative}
  .gcap{position:absolute;left:0;right:0;bottom:0;max-height:50%;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(transparent,rgba(0,0,0,.55));color:#fff;font-size:.8rem;padding:.6rem .5rem .4rem;text-align:center}
  section.band.hero{padding:40px 0;color:#fff;min-height:600px;display:flex;align-items:center}
  section.band.hero>.wrap{width:100%}
  /* A hero centres its content vertically by default. When a column opts into top/bottom alignment,
     let it win — this is what makes a text box's inner padding (innvendig luft) visible in a hero,
     since the default centring would otherwise re-centre the block and swallow the padding. */
  section.band.hero:has(>.wrap>.row>.col.vtop){align-items:flex-start}
  section.band.hero:has(>.wrap>.row>.col.vbot){align-items:flex-end}
  /* split-hero: text sits in a solid colour panel over the photo (left-aligned, constrained) */
  section.band.hero.haspanel>.wrap>.row{max-width:var(--panel-w,520px);margin:0;background:var(--panel);padding:2rem 2.2rem;border-radius:var(--panel-radius,10px);box-shadow:var(--panel-shadow,0 12px 40px rgba(0,0,0,.3))}
  section.band.hero.haspanel.panel-glass>.wrap>.row{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
  section.band.hero.haspanel>.wrap>.row>.col{flex:1 1 100%;max-width:100%}
  section.band.hero.haspanel h1,section.band.hero.haspanel h1 *{font-size:var(--panel-h1,clamp(1.6rem,3.2vw,2.4rem)) !important;overflow-wrap:normal !important;word-break:normal !important}
  @media(max-width:600px){ section.band.hero.haspanel>.wrap>.row{max-width:100%;padding:1.4rem 1.5rem} }
  /* hero_panel mobilmodus (byggerens savn #29): panelboksen dekket hele bildet på
     mobil. Standard er nå overlay-hero under 820px — gradient av panelfargen over
     bildet, panelboksen gjennomsiktig. panel_mobile:"panel" beholder boksen. */
  @media(max-width:820px){
    /* Kolonner kan aldri vokse forbi raden (bygger-funn #101, funksjonell-hund):
       flex-items uten max-width vokser med iboende innholdsbredde forbi en 390 px
       viewport — teksten kappes mens scrollWidth ser grønn ut (body klipper).
       Verifisert minimal fiks: max-width alene er nok. */
    .row>.col{max-width:100%}
    section.band.hero.haspanel.pm-overlay{position:relative}
    section.band.hero.haspanel.pm-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 50%,transparent),color-mix(in srgb,var(--panel) 80%,transparent));pointer-events:none}
    section.band.hero.haspanel.pm-overlay>.wrap{position:relative;z-index:1}
    section.band.hero.haspanel.pm-overlay>.wrap>.row{background:transparent;box-shadow:none;padding:0;border-radius:0;max-width:100%}
  }
  /* hero_mobil:"stablet" (#105): bildet blir eget bånd ØVER innholdet på mobil —
     presis fokuskontroll (bgx_mobil/bgy_mobil), teksten på ren flate under. */
  .mm-heromob{display:none}
  @media(max-width:820px){
    /* Hero-seksjoner er display:flex → uten bredde-deklarasjon kollapset båndet
       til 0 px som flex-item (bug 1 i #107). Kolonne-retning stabler bånd + wrap. */
    /* padding-top MÅ vinne over seksjonens innebygde pt (som står som inline-stil):
       i stablet modus ligger bildet øverst, og seksjonens topp-luft ble til en tom
       hvit stripe mellom menyen og bildet (funn 27.8). */
    section.band.mm-stablet{background-image:none!important;padding-top:0!important;flex-direction:column}
    section.band.mm-stablet:not(.haspanel){background-color:var(--hmbg,transparent)}
    section.band.mm-stablet>.mm-heromob{display:block;width:100%;flex:0 0 auto;align-self:stretch;height:var(--hmh,300px);background-size:cover;margin:0 0 1.4rem}
    section.band.mm-stablet.haspanel.pm-overlay::before{display:none}
    section.band.mm-stablet.haspanel.pm-overlay>.wrap>.row{background:var(--panel);box-shadow:var(--panel-shadow,0 12px 40px rgba(0,0,0,.2));padding:1.6rem 1.4rem;border-radius:var(--panel-radius,10px)}
  }
  /* panel_pos (#105): panelet (som er .row) kan stå høyre/nederst på desktop */
  @media(min-width:821px){
    section.band.hero.haspanel.mm-panel-right>.wrap>.row{margin-left:auto}
    section.band.hero.haspanel.mm-panel-bottom{display:flex;flex-direction:column;justify-content:flex-end}
    /* bottom-left/-right (#121): platen forankret NEDE i et hjørne, delvis bredde
       (panel_width), innholdshøyde — bygget over står fritt. padding-bottom:0 lar
       platen vokse ut av seksjonens bunnkant (hjørne den med panel_radius_corners). */
    section.band.hero.haspanel.mm-panel-bottom-left,section.band.hero.haspanel.mm-panel-bottom-right{display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:0}
    section.band.hero.haspanel.mm-panel-bottom-left>.wrap>.row{margin:0 auto 0 0}
    section.band.hero.haspanel.mm-panel-bottom-right>.wrap>.row{margin:0 0 0 auto}
  }
  /* bare:"mobil"|"desktop" (#105): seksjonen finnes kun i én bredde */
  @media(max-width:820px){section.band.mm-bare-desktop{display:none!important}}
  @media(min-width:821px){section.band.mm-bare-mobil{display:none!important}}
  /* text_scheme (#100/#76): eksplisitte farger — å snu ondark er ikke nok når
     hele TEMAET er mørkt (tekstfargene er lyse globalt). Står ETTER
     ondark-reglene i kaskaden og vinner ved lik spesifisitet. */
  section.band.mm-ts-dark, section.band.mm-ts-dark :is(h1,h2,h3,h4,h5,h6,p,li,label,td,th,figcaption,blockquote){color:#1c2430}
  section.band.mm-ts-dark hr.div{border-top-color:rgba(28,36,48,.25)}
  section.band.mm-ts-dark a:not(.btn){color:#1c2430}
  section.band.mm-ts-light, section.band.mm-ts-light :is(h1,h2,h3,h4,h5,h6,p,li,label,td,th,figcaption,blockquote){color:#f5f6f8}
  section.band.mm-ts-light hr.div{border-top-color:rgba(245,246,248,.3)}
  section.band.mm-ts-light a:not(.btn){color:#f5f6f8}
  /* infokort-titler på det ALLTID-hvite kortet (#76 feil 2): p/li hadde alt
     eksplisitt mørk farge — overskriftene arvet ondark-hvitt/--hcol og forsvant.
     ondark-scopet selektor (0-3-2) slår ondark-tekstregelen (0-2-2) uansett rekkefølge. */
  section.band.ondark .mm-infokort-i :is(h1,h2,h3,h4,h5,h6){color:#1c2430}
  /* FAQ-flaten på mørke bånd (#76 feil 3): rgba-hvit-flaten ga ~2,3:1 med lys tekst */
  section.band.ondark .mm-faq-i{background:rgba(244,245,247,.06)}
  /* brødsmulesti (L#93): navigasjon på nestede seksjoner, ikke pynt */
  .mm-brodsmule{font-size:.8rem;padding:.75rem 0 0;opacity:.8}
  .mm-brodsmule a{color:inherit;text-decoration:none}
  .mm-brodsmule a:hover{text-decoration:underline}
  .mm-brodsmule span[aria-hidden]{opacity:.45;padding:0 .35em}
  .mm-brodsmule span[aria-current]{opacity:.85}
  /* overlay_style:"vignett" (L#88): radial mørkning mot kantene — motivet fritt i midten */
  section.band.mm-vignett{position:relative;isolation:isolate}
  section.band.mm-vignett::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 72% at 50% 48%,rgba(var(--vigc,0,0,0),var(--vig0,.08)) 0%,rgba(var(--vigc,0,0,0),var(--vig1,.43)) 52%,rgba(var(--vigc,0,0,0),var(--vig2,.78)) 100%)}
  section.band.mm-vignett>.wrap{position:relative;z-index:1}
  section.band.hero + section.band{padding-top:44px}  /* breathing room after hero */
  /* Kolofonen (21.9.2026): to spalter på PC – kundens del til venstre (©, footer_note, juridiske
     lenker + footer_links, én ting per linje), byrålinja til høyre med hver del på egen linje.
     Sidekart, lockup, some-ikoner og hårlinjen (.fsep) spenner hele bredden over. På mobil
     stables alt til venstre. Plass er ikke knapp – flere linjer slår én overfylt rad. */
  footer.site .wrap{display:grid;grid-template-columns:1fr auto;gap:.6rem 2.5rem;align-items:start}
  footer.site .wrap>.footer-nav,footer.site .wrap>.footer-brand,footer.site .wrap>.mm-some-footer,footer.site .wrap>.fsep{grid-column:1/-1}
  footer.site .fsep{border:0;border-top:1px solid rgba(127,127,127,.38);margin:.15rem 0 .35rem}
  footer.site .kolofon{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;line-height:1.65}
  footer.site .legal{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem}
  footer.site .legal a{opacity:.85}
  footer.site .footer-note{margin:0;font-size:.76rem;opacity:.62}
  footer.site .credit{text-align:right;line-height:1.65;opacity:.8;justify-self:end}
  footer.site .credit a{color:#ddd}
  footer.site .credit .cta{white-space:nowrap}
  .ucform .fradios{margin:0 0 .8rem}
  .ucform .fradio{display:inline-flex;gap:.4rem;align-items:center;margin:0 1.1rem .45rem 0;font-size:.95rem;cursor:pointer}
  .ucform .fradio input{width:auto;margin:0}
  /* Flervalg (#250): kolonner som standard, «liste» gir én per linje. Boksene bryter aldri
     ordet fra krysset — hvert valg er en egen label med sin egen kolonne. */
  .ucform .fcgruppe{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.3rem .9rem;margin:0 0 .8rem}
  .ucform .fcgruppe.fcg-liste{grid-template-columns:1fr}
  .ucform .fcg{display:flex;gap:.5rem;align-items:flex-start;font-size:.95rem;line-height:1.4;cursor:pointer;padding:.15rem 0}
  .ucform .fcg input{width:auto;margin:.2rem 0 0;flex:none}
  @media(max-width:560px){.ucform .fcgruppe{grid-template-columns:1fr}}
  .mm-faq-i{border:1px solid rgba(127,127,127,.25);border-radius:10px;margin:0 0 .6rem;background:rgba(255,255,255,.6)}
  .mm-faq-i summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;font-weight:600}
  .mm-faq-i summary::-webkit-details-marker{display:none}
  .mm-faq-pil{flex:none;width:14px;height:14px;opacity:.55;transition:transform .18s}
  .mm-faq-pil svg{display:block;width:100%;height:100%}
  .mm-faq-i[open] .mm-faq-pil{transform:rotate(180deg)}
  .mm-faq-svar{padding:0 1.1rem .9rem;line-height:1.6}
  /* FAQ-søk (#249): boksen er hidden i markup og vises av filterskriptet — uten JS står hele lista. */
  .mm-faq-sok{margin:0 0 .9rem}
  .mm-faq-sok-l{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .mm-faq-sok-in{width:100%;box-sizing:border-box;padding:.7rem .95rem;font:inherit;font-size:.98rem;color:inherit;background:rgba(255,255,255,.6);border:1px solid rgba(127,127,127,.32);border-radius:10px}
  .mm-faq-sok-in:focus-visible{outline:2px solid var(--mm-accent,var(--brand));outline-offset:1px}
  .mm-faq-sok-n{margin:.45rem 0 0;font-size:.82rem;opacity:.7;min-height:1.2em}
  .mm-faq-sok-tom{margin:.5rem 0 0;font-size:.94rem;opacity:.8}
  section.band.ondark .mm-faq-sok-in{background:rgba(244,245,247,.08);border-color:rgba(255,255,255,.28);color:#fff}
  section.band.ondark .mm-faq-sok-in::placeholder{color:rgba(255,255,255,.6)}
  .mm-faq-svar>*:first-child{margin-top:0}
  .mm-faq-tom{border:2px dashed #c7d2fe;border-radius:10px;background:#f8faff;padding:.9rem;text-align:center;color:#4338ca;font-weight:600}
  /* #346 (mosspadelsenter): i en loddrett rad gjelder kolonnens flex-basis (33 %) HØYDEN, så en 9/16-video i en smal
     kolonne rant ut av seksjonen. Kolonnene får sin naturlige høyde og full bredde. width:100 % må stå eksplisitt:
     uten bredde har kolonnen ingenting å regne aspect-ratio-høyden av (målt av byggeren i Chromium, 16 px mot 622 px). */
  @media(max-width:767px){ .row:has(.mm-mobfirst){display:flex;flex-direction:column} .row:has(.mm-mobfirst)>.col{flex:0 0 auto;width:100%;max-width:100%} .col.mm-mobfirst{order:-1} }
  @media(max-width:600px){
    footer.site .wrap{grid-template-columns:1fr}
    footer.site .credit{text-align:left;justify-self:start}
  }
  /* Dark sections (photo/overlay bands, is_hero, or a dark solid colour) DEFAULT to light text —
     headings, paragraphs, list items, form labels and the consent line — so migrated content stays
     readable on the photo it sits over. This is a plain default (no !important): a colour the editor
     explicitly applies to the text wins, so hero text can be recoloured. Descendants without their
     own colour simply inherit the light default. */
  section.band.ondark :is(h1,h2,h3,h4,h5,h6,p,li,label){color:#fff}
  /* Lenker i løpende tekst på mørke bånd (hindring #162.3): aksentfargen forsvinner
     mot mørkt foto — lys tekst + understrek skiller lenken. Knapper/kort urørt. */
  section.band.ondark :is(p,li) a:not(.btn){color:#fff;text-decoration:underline;text-underline-offset:2px}
  /* Butikk og booking på mørke bånd (Berg Performance 4.9): produktbeskrivelsen er en div og
     tidslukene er knapper med color:inherit — ingen av dem traff elementlista over, så teksten
     ble svart på svart. Produktdetalj + bookingmodulen arver hvitt; hvite produktkort (.mm-pkort)
     og modalene setter sin egen mørke tekst og påvirkes ikke. */
  :is(section.band.ondark,.col.colbg.ondark) :is(.mm-pdetalj,.mm-bk){color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-brodsmule{color:rgba(255,255,255,.62)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-bk .mm-bk-luke{border-color:rgba(255,255,255,.35)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-pkat:not(.akt){color:#0f172a}
  /* Light cards on dark bands keep dark text; the ondark white must not leak in. */
  section.band.ondark .col.mm-card.mm-card-soft :is(p,li,label),
  section.band.ondark .col.mm-card.mm-card-glass :is(p,li,label){color:var(--primary)}
  section.band.ondark .col.mm-card.mm-card-soft :is(h1,h2,h3,h4,h5,h6),
  section.band.ondark .col.mm-card.mm-card-glass :is(h1,h2,h3,h4,h5,h6){color:var(--hcol)}
  /* #297 (kredorenhold): skjemaet inne i et lyst kort på mørkt bånd arvet båndets hvite tekst i
     select (color:inherit) og «(valgfritt)» (.ondark-regelen under) – 1,0:1 på hvit kortflate. */
  section.band.ondark .col.mm-card.mm-card-soft .ucform select,
  section.band.ondark .col.mm-card.mm-card-glass .ucform select{color:var(--primary)}
  section.band.ondark .col.mm-card.mm-card-soft .ucform select:invalid,
  section.band.ondark .col.mm-card.mm-card-glass .ucform select:invalid{color:#6b7280}
  section.band.ondark .col.mm-card.mm-card-soft .ucform .flabel .freq,
  section.band.ondark .col.mm-card.mm-card-glass .ucform .flabel .freq{color:var(--mm-muted)}
  /* Infokort er hvite kort — ondark-hviten må heller ikke lekke inn i dem (hindring #10) */
  :is(section.band.ondark,.col.colbg.ondark) .mm-infokort-i :is(h1,h2,h3,h4,h5,h6){color:var(--hcol)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-infokort-i :is(p,li,label),
  :is(section.band.ondark,.col.colbg.ondark) .mm-infokort-t{color:#1c2430}
  section.band.hero h1,section.band.hero h2,section.band.hero h3{max-width:100%}
  /* Dual hero: two photos side-by-side, each COVERING its half (cropped, never squeezed). */
  section.band.dualbg{position:relative;overflow:hidden}
  section.band.dualbg::before,section.band.dualbg::after{content:"";position:absolute;top:0;bottom:0;width:50%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}
  section.band.dualbg::before{left:0;background-image:linear-gradient(rgba(var(--ovc,0,0,0),var(--ov,.5)),rgba(var(--ovc,0,0,0),var(--ov,.5))),var(--bgl);background-position:var(--bgposl,center)}
  section.band.dualbg::after{right:0;background-image:linear-gradient(rgba(var(--ovc,0,0,0),var(--ov2,.5)),rgba(var(--ovc,0,0,0),var(--ov2,.5))),var(--bgr);background-position:var(--bgposr,center)}
  section.band.dualbg>.wrap{position:relative;z-index:1;max-width:none;padding:0}
  /* two images = two content areas: each 50% column sits over its own image half */
  section.band.dualbg>.wrap>.row{margin:0;align-items:stretch}
  section.band.dualbg>.wrap>.row>.col{padding:clamp(2rem,5vw,4.5rem)}
  @media(max-width:600px){ section.band.dualbg>.wrap>.row>.col{padding:2rem 1.4rem} }
  @media(max-width:600px){ section.band.dualbg::before{width:100%} section.band.dualbg::after{display:none} }
  /* parallax: the photo stays put while the page scrolls (single bg, or each half of a dual bg) */
  /* Parallax-emuleringen setter inn et bakgrunnslag som barn av seksjonen. Uten
     dette males seksjonens egne overleggs-pseudoelementer (panel-scrim, vignett)
     FØR laget og forsvinner bak fotoet — kontrastvernet på mobilheroer ryker. */
  section.band.mm-plx-host.pm-overlay::before,section.band.mm-plx-host.mm-vignett::after{z-index:1}
  section.band.parallax:not(.dualbg){background-attachment:fixed}
  section.band.parallax.dualbg::before,section.band.parallax.dualbg::after{background-attachment:fixed}
  @media(max-width:768px){ section.band.parallax,section.band.parallax.dualbg::before,section.band.parallax.dualbg::after{background-attachment:scroll} }
  /* #134 (skin-clinic, WCAG 2.3.3): parallax er den mest utløsende effekten for
     vestibulære forstyrrelser — respekter «reduser bevegelse» som alle de andre
     bevegelseseffektene (entrance/reveal/stagger) allerede gjør. */
  @media(prefers-reduced-motion:reduce){ section.band.parallax,section.band.parallax.dualbg::before,section.band.parallax.dualbg::after,.col.colbg[style*="fixed"]{background-attachment:scroll !important} }
  /* background video (YouTube/Vimeo) covering the band, content + overlay on top */
  section.band.hasbgvideo{position:relative;overflow:hidden}
  section.band.hasbgvideo>.wrap{position:relative;z-index:2}
  .mm-bgvid{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
  .mm-bgvid iframe{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0}
  .mm-bgvid-ov{position:absolute;inset:0;z-index:1}
  /* rotating background slideshow: cross-fading photo layers behind a section */
  section.band.hasbgslides{position:relative}
  .mm-bgshow{position:absolute;inset:0;z-index:0;overflow:hidden}
  .mm-bgsl{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity 1.4s ease-in-out}
  .mm-bgsl.on{opacity:1}
  .mm-bgsl-ov{position:absolute;inset:0;z-index:1}
  section.band.hasbgslides>.wrap{position:relative;z-index:2}
  /* image carousel (gallery shown one at a time) */
  .gcarousel{position:relative;width:100%;overflow:hidden;border-radius:6px}
  .gcframe{position:relative;width:100%;aspect-ratio:var(--gasp,16/9)}
  /* Skjulte slides må også være UTE av treff-flaten og tabbrekkefølgen: med bare
     opacity:0 lå siste slide i DOM-en øverst, så klikk på det synlige bildet åpnet
     et annet bilde/lenke, og Tab gikk gjennom alle de usynlige (funn 26.8). */
  .gcarousel .gcslide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .6s ease,visibility .6s;display:block}
  .gcarousel .gcslide.on{opacity:1;visibility:visible;pointer-events:auto}
  .gcarousel .gcslide img{width:100%;height:100%;object-fit:cover;display:block}
  .gcnav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;border:0;background:rgba(0,0,0,.42);color:#fff;width:42px;height:42px;border-radius:50%;font-size:1.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
  .gcnav:hover{background:rgba(0,0,0,.66)}
  .gcprev{left:10px}.gcnext{right:10px}
  .gcdots{position:absolute;left:0;right:0;bottom:10px;z-index:3;display:flex;gap:.45rem;justify-content:center}
  .gcdot{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0}
  .gcdot.on{background:#fff}
  /* grid element (columns-in-width as a module) */
  .gridmod{display:grid;grid-template-columns:repeat(var(--gmc,2),1fr);width:100%;align-items:start}
  @media(max-width:600px){ .gridmod{grid-template-columns:1fr !important} }
  .gridmod .gcellwrap{min-width:0}
  .gridmod .gcellwrap img{max-width:100%;height:auto}
  .mm-gridcell{min-height:1.4em;outline:none}
  .mm-gridmod .gcellwrap{border:1px dashed rgba(0,0,0,.18);border-radius:6px;padding:.5rem;min-height:2.6em}
  /* whole-box links (text element, section, or column made clickable) with a subtle hover darken */
  .mm-haslink{position:relative}
  /* Ekte farge i stedet for opacity (#257): en kicker på 5,5:1 målte 3,9:1 reelt, og målere ser ikke opacity. Inline-farge vinner som før. */
  .mm-kicker{margin:0 0 .45rem;font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--mm-muted)}
  .ondark .mm-kicker{color:rgba(255,255,255,.82)}
  .mm-boxlink{position:absolute;inset:0;z-index:1;background:transparent;transition:background .18s ease;border-radius:inherit;cursor:pointer}
  /* Hover kun på ekte pekere (iOS emulerer :hover ved trykk og LÅSER den —
     kortet ble stående mørkegrått), og dempet til et reelt «subtle darken». */
  @media(hover:hover) and (pointer:fine){.mm-haslink:hover>.mm-boxlink{background:rgba(0,0,0,.07)}}
  .mm-boxlink{-webkit-tap-highlight-color:transparent}
  .mm-haslink:active>.mm-boxlink{background:rgba(0,0,0,.07)}
  .mm-haslink>:not(.mm-boxlink) a,.mm-haslink>:not(.mm-boxlink) button{position:relative;z-index:2}
  .mm-haslink>a:not(.mm-boxlink),.mm-haslink>button,.mm-haslink>form,.mm-haslink>iframe{position:relative;z-index:2}
  .mm-linkbadge{display:inline-block;font-size:.7rem;background:#0369a1;color:#fff;border-radius:4px;padding:.05rem .3rem;margin:0 .25rem .2rem 0;vertical-align:middle}
  .mm-linkbadge-sec{position:absolute;top:6px;left:6px;z-index:30}
  /* Hero titles carry no inline size; scale fluidly so they never overflow small screens */
  section.band.hero h1,section.band.hero h1 *{font-size:var(--panel-h1,clamp(1.8rem,6vw,3.45rem)) !important;line-height:1.15 !important;letter-spacing:0 !important;white-space:normal !important;overflow-wrap:break-word}
  section.band.hero h3,section.band.hero h3 *{font-size:var(--panel-h3,clamp(1.3rem,4.5vw,2.2rem)) !important}
  section.band.hero h2,section.band.hero h2 *{font-size:var(--panel-h2,inherit)}
  section.band.hero h4,section.band.hero h4 *{font-size:clamp(1.1rem,3.5vw,1.75rem) !important}
  /* hero sub-headings in the readable body font (original uses Lato for the hero subtitle) */
  section.band.hero h3,section.band.hero h3 *,section.band.hero h4,section.band.hero h4 *,section.band.hero h5,section.band.hero h5 *{font-family:var(--body) !important}
  section.band.hero hr.div{border:0;height:0;margin:.5rem auto}
  .row{display:flex;flex-wrap:wrap;margin:0 -15px}
  .col{padding:0 15px;flex:1 1 100%;min-width:0}
  @media(min-width:768px){ .col-1{flex:0 0 8.3333%;max-width:8.3333%}.col-2{flex:0 0 16.6667%;max-width:16.6667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333%;max-width:33.3333%}.col-5{flex:0 0 41.6667%;max-width:41.6667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333%;max-width:58.3333%}.col-8{flex:0 0 66.6667%;max-width:66.6667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333%;max-width:83.3333%}.col-11{flex:0 0 91.6667%;max-width:91.6667%}.col-12{flex:0 0 100%;max-width:100%} }
  /* per-column vertical alignment of content (top is default). The row stretches columns to equal
     height, so a column can push its content to the middle or bottom of that shared height. */
  .col.vmid{display:flex;flex-direction:column;justify-content:center}
  .col.vbot{display:flex;flex-direction:column;justify-content:flex-end}
  section.band.cards>.wrap>.row>.col.vmid,section.band.cards>.wrap>.row>.col.vbot{align-self:stretch}
  /* When a section has an explicit min-height, let the content area fill it so vertical-align uses the
     FULL section height (not just the tallest column). Without this the spare height piled up unused at
     the bottom and "midtstilt/bunn" looked like it did nothing. Hero/cards/dualbg keep their own layout. */
  section.band.mh:not(.hero):not(.cards):not(.dualbg){display:flex;flex-direction:column}
  /* width:100% (hindring #162.1): flex-basis auto uten bredde lot .wrap krympe til
     innholdet i full_width+minh-seksjoner (målt 510px i en 1440px seksjon) */
  section.band.mh:not(.hero):not(.cards):not(.dualbg)>.wrap{flex:1 1 auto;display:flex;flex-direction:column;width:100%}
  section.band.mh:not(.hero):not(.cards):not(.dualbg)>.wrap>.row{flex:1 1 auto}
  /* Per-column background (colour or photo+overlay): pad + round it into a panel; light text over a photo */
  .col.colbg{padding-top:clamp(1.2rem,3vw,2rem);padding-bottom:clamp(1.2rem,3vw,2rem);border-radius:var(--col-radius,10px);background-size:cover}
  .col.colbg.mm-col-pad0{padding:0}
  .col.colbg.ondark :is(h1,h2,h3,h4,h5,h6,p,li,label){color:#fff}
  /* Lys kolonneflate på mørkt bånd (hindring #198, gripsgardbygg): kolonnen er ikke ondark, men
     båndet er — teksten arvet hvit. Lys colbg gir mørk tekst og mørke felt uten å bli et kort. */
  section.band.ondark .col.colbg:not(.ondark) :is(h1,h2,h3,h4,h5,h6,p,li,label,.flabel,.consent){color:#1c2430}
  section.band.ondark .col.colbg:not(.ondark) :is(input,textarea,select){background:#fff;color:#1c2430;border-color:rgba(0,0,0,.25)}
  section.band.ondark .col.colbg:not(.ondark) ::placeholder{color:#64748b}
  @media(max-width:768px){ .col.colbg[style*="fixed"]{background-attachment:scroll !important} }
  /* Card grid: equal aligned cells (rutenett); each card is a flex column with its CTA pinned to
     the bottom so buttons line up across cards regardless of text length. */
  section.band.cards>.wrap>.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:0;align-items:start}
  section.band.cards>.wrap>.row>.col{padding:0;max-width:none;flex:none}
  @media(max-width:600px){ section.band.cards>.wrap>.row{grid-template-columns:1fr} }
  /* Logo strip MODULE: certification/partner logos on ONE centered wrapping row, sized by HEIGHT
     (responsive clamp) so they read the same on phone and desktop. Height is absolute, so there is no
     mobile/desktop mismatch the way a width-percentage has. */
  .mm-logostrip{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(22px,5vw,60px)}
  .mm-logoitem{display:inline-flex;align-items:center}
  .mm-logostrip img{height:var(--mm-logoh,clamp(34px,8vw,62px));width:auto;max-width:100%;object-fit:contain;display:block}
  .mm-logostrip-sm{--mm-logoh:clamp(26px,6vw,46px)}
  .mm-logostrip-md{--mm-logoh:clamp(34px,8vw,62px)}
  .mm-logostrip-lg{--mm-logoh:clamp(44px,10vw,84px)}
  .mm-logostrip-xl{--mm-logoh:clamp(56px,13vw,116px)}
  .mm-logostrip-xxl{--mm-logoh:clamp(72px,17vw,160px)}
  .mm-logos-ed{cursor:pointer;min-height:42px}
  /* #314 (hamroc): gråtone-stripe, fargen tilbake ved hover */
  .mm-logos-mono img{filter:grayscale(1);opacity:.9;transition:filter .3s ease,opacity .3s ease}   /* .72 gjorde små logoer uleselige (#321c) */
  .mm-logos-mono.mm-logos-hover .mm-logoitem:hover img,.mm-logos-mono.mm-logos-hover .mm-logoitem:focus-visible img{filter:none;opacity:1}
  /* #313 (hamroc): kart over hele bredden øverst i bunnen */
  footer.site .wrap>.footer-map{grid-column:1/-1;margin:0 0 1.1rem}
  footer.site .footer-map iframe{display:block;width:100%;border:0;border-radius:12px;filter:saturate(.85)}
  .mm-logos-empty{color:#64748b;font-size:.85rem;border:1px dashed #cbd5e1;border-radius:8px;padding:.5rem .9rem}
  /* narrower content column for a section (centred); --cw set inline */
  section.band.cwidth>.wrap{max-width:var(--cw);margin-left:auto;margin-right:auto}
  .m{margin:0 0 1rem}
  /* utsalgssteder (hindring #153): kart + søkbar liste side ved side, stablet under 860 px */
  .mm-uts-sok{width:100%;box-sizing:border-box;padding:.7rem .9rem;border:1px solid rgba(0,0,0,.18);border-radius:var(--mm-btn-radius,8px);font:inherit;margin:0 0 .8rem;background:#fff;color:#1c2430}
  .mm-uts-hopp{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin:0 0 .9rem;font-size:.9rem}
  .mm-uts-hopp a{color:inherit;text-decoration:underline;text-underline-offset:3px}
  .mm-uts-wrap{display:grid;grid-template-columns:1fr;gap:1.2rem}
  @media(min-width:860px){.mm-uts:not(.mm-uts-bareliste) .mm-uts-wrap{grid-template-columns:1.1fr 1fr;align-items:start}}
  .mm-uts-kart{min-height:380px;height:min(70vh,560px);border-radius:var(--mm-btn-radius,8px);overflow:hidden;background:#e8ecef;position:sticky;top:calc(var(--mm-navh,76px) + 12px)}
  .mm-uts-liste{padding-right:.3rem}   /* ingen indre scroll (#202): hele lista synlig, kartet er sticky ved siden av */
  .mm-uts-bareliste .mm-uts-liste{max-height:none}
  .mm-uts-gr h3{font-size:1.05rem;margin:1rem 0 .4rem}
  .mm-uts-gr:first-child h3{margin-top:0}
  .mm-uts-sted{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .7rem;border-top:1px solid rgba(0,0,0,.08);font-size:.95rem}
  .mm-uts-sted[hidden],.mm-uts-gr[hidden],.mm-uts-hopp[hidden]{display:none !important}
  .mm-uts-sted.mm-uts-har{cursor:pointer}
  .mm-uts-sted.mm-uts-har:hover{background:rgba(0,0,0,.04)}
  .mm-uts-adr{opacity:.8}
  .mm-uts-l a{color:inherit;text-decoration:underline;text-underline-offset:3px}
  .leaflet-container{font:inherit}
  .mm-imgclip{display:block;overflow:hidden;line-height:0}
  .m.center{text-align:center}.m.right{text-align:right}
  .pgap{margin:0;padding:0;height:1em}                /* collapsed blank line from the migration */
  /* %-box-width (text/buttons/etc.) constrains the measure on desktop but would cramp a phone column,
     so it relaxes to full width on mobile. Images/galleries keep their own pixel floor instead. */
  .m[style*="--mmbw"]{max-width:var(--mmbw)}
  @media(max-width:767px){ .m[style*="--mmbw"]{max-width:100% !important} }
  @media(max-width:600px){.m.mm-hide-mobile{display:none !important}}
  @media(min-width:601px){.m.mm-hide-desktop{display:none !important}}
  .btn{display:inline-block;background:#a81f24;color:#ffffff;padding:0 30px;border-radius:3px;text-decoration:none;font-weight:600;font-size:14px;transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s,background .2s;padding:.8rem 30px;}
  .btn:hover{background:#821318;transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.16)}
  @media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}}
  .btn.btn--outline{background:transparent;background-image:none;color:var(--btnol,var(--btnbg));border:1px solid var(--btnol,var(--btnbg))}
  .btn.btn--outline:hover{background:var(--btnol,var(--btnbg));color:#fff}
    .map iframe{width:100%;border:0;border-radius:6px}
  .gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;width:100%}
  @media(max-width:600px){ .gallery{grid-template-columns:repeat(2,1fr) !important} }
  /* article/news index card grid (links to each article page) */
  .article-items{display:flex;flex-wrap:wrap;margin:1rem -10px;align-items:stretch}
  .article-item{box-sizing:border-box;flex-basis:33.333%;padding:10px!important}
  @media(max-width:820px){ .article-item{flex-basis:50%!important} }
  @media(max-width:520px){ .article-item{flex-basis:100%!important} }
  .article-item-container{border:1px solid #e8e8e8;border-radius:10px;overflow:hidden;background:#fff;height:100%;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:box-shadow .15s}
  .article-item-container:hover{box-shadow:0 6px 20px rgba(0,0,0,.12)}
  .article-item-image img{width:100%;height:190px;object-fit:cover;display:block}
  .article-item-title{padding:.75rem .95rem;font-weight:600;font-size:1.02rem;line-height:1.3}
  .article-item a{text-decoration:none;color:inherit}
  .article-item-published-date,.article-item-category{padding:0 .95rem .6rem;color:#888;font-size:.82rem}
  .gallery .gitem{display:block;overflow:hidden;border-radius:6px;cursor:zoom-in}
  .gallery img{width:100%;height:170px;object-fit:cover;display:block;transition:transform .25s}
  .gallery[style*="--gasp"] img{height:auto;aspect-ratio:var(--gasp)}
  .videowrap{position:relative;width:100%;aspect-ratio:16/9}
  .videowrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:8px}
  .gallery .gitem:hover img{transform:scale(1.05)}

  /* Dynamic articles/news card grid */
  .mm-artgrid{display:grid;gap:clamp(16px,2.5vw,28px)}
  .mm-artcard{display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.08);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}
  a.mm-artcard:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,0,0,.13)}
  .mm-artthumb{aspect-ratio:16/10;overflow:hidden;background:#eef2f7}
  .mm-artthumb img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-artbody{padding:clamp(.9rem,1.6vw,1.3rem);display:flex;flex-direction:column;gap:.5rem;flex:1}
  .mm-arttitle{margin:0;font-size:1.15rem;line-height:1.25}
  .mm-artdate{font-size:.8rem;opacity:.6}
  .mm-artex{margin:0;font-size:.93rem;opacity:.85;flex:1}
  .mm-artmore{font-weight:600;color:var(--mm-accent,#e6529e)}
  .mm-artrows{display:flex;flex-direction:column;border-top:1px solid var(--artline,rgba(127,127,127,.35))}
  .mm-artrow{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--artline,rgba(127,127,127,.35));color:inherit;text-decoration:none;transition:padding-left .18s}
  a.mm-artrow:hover{padding-left:.4rem}
  .mm-artnum{font-family:var(--mm-font-utility,var(--body));font-variant-numeric:tabular-nums;font-size:.85rem;opacity:.55;min-width:2ch}
  .mm-artrow-th{flex:0 0 72px;aspect-ratio:1/1;border-radius:8px;overflow:hidden}
  .mm-artrow-th img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-artrow-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}
  .mm-artrow .mm-arttitle{font-size:1.05rem;font-weight:600}
  .mm-artrow .mm-artex{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
  .mm-artrow-m{display:flex;align-items:center;gap:.8rem;white-space:nowrap;font-size:.85rem;opacity:.7;font-family:var(--mm-font-utility,var(--body))}
  .mm-artrow .mm-artarrow{opacity:1;color:var(--mm-accent,#e6529e);font-size:1.1rem}
  @media(max-width:600px){.mm-artrow{flex-wrap:wrap}.mm-artrow-m{width:100%;padding-left:calc(2ch + 1rem)}.mm-artrow-th{flex-basis:56px}}
  @media(max-width:768px){ .mm-artgrid{grid-template-columns:1fr 1fr !important} }
  @media(max-width:520px){ .mm-artgrid{grid-template-columns:1fr !important} }
  .mm-articles-empty{color:#475569;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:10px;padding:1rem 1.2rem;text-align:center}
  /* Article lead/ingress */
  .mm-lead{font-size:clamp(1.1rem,2vw,1.32rem);line-height:1.6;color:var(--mm-lead,#475569);font-weight:500;margin:.2rem 0 0}
  .ondark .mm-lead{color:rgba(255,255,255,.88)}
  /* Semantiske tekstklasser (7.9.2026): samme fire i editorens «Tekststil» og i byggernes HTML — kicker/lead/dempet/liten. */
  .mm-dempet{color:var(--mm-muted,#5b6470)} .ondark .mm-dempet{color:rgba(255,255,255,.8)}
  .mm-liten{font-size:var(--mm-fs-liten,.86rem);line-height:1.5}
  .mm-fakta{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin:.6rem 0;padding:0;list-style:none} .mm-fakta li{margin:0}
  /* lightbox popup */
  .lb{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;padding:3vmin;cursor:zoom-out}
  .lb.show{display:flex}
  .lb img{max-width:96vw;max-height:92vh;width:auto;height:auto;border-radius:6px;box-shadow:0 8px 40px rgba(0,0,0,.5)}
  .lb .lbx{position:absolute;top:14px;right:22px;color:#fff;font-size:2.4rem;line-height:1;cursor:pointer;background:none;border:0}
  .lb .lbnav{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:3rem;cursor:pointer;background:none;border:0;padding:0 1rem;user-select:none}
  .lb .lbprev{left:1vmin}.lb .lbnext{right:1vmin}
  .ucform{max-width:560px;margin:0 auto;text-align:left}
  .ucform .filefield{display:block;margin:0 0 .8rem;font-size:.92rem;background:rgba(255,255,255,.92);border:1px dashed #94a3b8;border-radius:6px;padding:.55rem .75rem}
  .ucform .filefield span{display:block;margin-bottom:.3rem;color:#1f2937;font-weight:600}
  .ucform .filefield input[type=file]{width:100%;padding:.4rem;border:0;background:transparent;font-size:.85rem;color:#1f2937;margin:0}
  .ucform .mm-ff .mm-ff-in{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap;padding:0;border:0}
  .ucform .mm-ff{position:relative}
  .ucform .mm-ff .mm-ff-btn{display:inline-flex;align-items:center;font-size:.88rem;padding:.5rem 18px;min-height:0;cursor:pointer}
  .ucform .mm-ff .mm-ff-status{display:inline-block;margin-left:.7rem;font-size:.85rem;color:#475569;font-weight:400}
  .ucform .mm-ff:has(.mm-ff-in:focus-visible) .mm-ff-btn{outline:2px solid var(--btnol,var(--btnbg));outline-offset:2px}
  .ucform input,.ucform textarea{width:100%;padding:.7rem .9rem;margin:0 0 .8rem;border:1px solid #ccc;border-radius:4px;font:inherit;background:rgba(255,255,255,.85)}
  .ucform select{width:100%;padding:.7rem 2.6rem .7rem .9rem;margin:0 0 .8rem;border:1px solid #ccc;border-radius:4px;font:inherit;color:inherit;background:rgba(255,255,255,.85);appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23667' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center}
  .ucform select:invalid{color:#6b7280}   /* plassholderen målte 3,24:1 på hvit flate (#315, kredorenhold) – 4,83:1 nå */
  .ucform .flabel{display:block;font-size:.88rem;font-weight:600;margin:0 0 .3rem}
  .ucform .flabel .freq{color:var(--mm-muted);font-weight:400}   /* «(valgfritt)» målte 2,99:1 med opacity .55 (#257) */
  .ondark .ucform .flabel .freq{color:rgba(255,255,255,.8)}
  .ucform{font-family:inherit}
  .ucform .consent{display:flex;gap:.5rem;align-items:flex-start;font-family:inherit;font-size:.9rem;margin:0 0 1rem;text-align:left}
  .ucform .consent input{width:auto;margin:.2rem 0 0}
  .ucform .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
  .ucform .btn{border:0;cursor:pointer}
  /* form.align (hindring #177.2): send-knappen følger modulens justering */
  .ucform.mm-form-center [type=submit]{display:block;margin-left:auto;margin-right:auto}
  .ucform.mm-form-right [type=submit]{display:block;margin-left:auto}
  .ucform .formok{background:#16a34a;border:1px solid #15803d;color:#ffffff;font-weight:600;padding:.85rem 1rem;border-radius:8px;margin:0 0 1rem;box-shadow:0 4px 14px rgba(0,0,0,.18)}
  .ucform .mm-formwarn{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:.6rem .85rem;border-radius:6px;margin:0 0 1rem;font-size:.9rem;font-weight:600}
  /* contact form shown as a popup (button opens an overlay) */
  .formpop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9000;align-items:flex-start;justify-content:center;padding:6vh 1rem;overflow:auto}
  .formpop.show{display:flex}
  .formpop-inner{background:#fff;color:#1a1a1a;border-radius:12px;padding:1.8rem 1.6rem;max-width:560px;width:100%;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.45)}
  .formpop-inner .ucform{margin:0;max-width:none}
  .formpop-x{position:absolute;top:6px;right:12px;border:0;background:none;font-size:1.8rem;line-height:1;cursor:pointer;color:#334155}
  /* site-wide floating call/mail button (bottom-right) + "call me back" popup (bottom-left) */
  .mm-cfab{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom, 0px) + var(--mm-vvlift, 0px));right:16px;z-index:8000;width:58px;height:58px;border-radius:50%;background:#a81f24;color:#ffffff;display:flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 8px 22px rgba(0,0,0,.32);text-decoration:none;font:600 1.08rem var(--body, inherit)}
  .mm-cfab:hover{background:#821318;color:#ffffff}
  .mm-cfab svg{width:27px;height:27px;fill:currentColor;flex:none}
  .mm-cfab-pill{width:auto;border-radius:999px;padding:0 22px 0 18px}
  .mm-cfab-pill span{white-space:nowrap}
  @media(max-width:600px){ .mm-cfab{width:46px;height:46px} .mm-cfab svg{width:22px;height:22px} .mm-cfab-pill{width:auto;padding:0 18px 0 15px} }
  /* when logged in, the editor's own bottom-right buttons sit there — lift our FAB above them */
  body:has(#mm-fab) .mm-cfab,body:has(#mm-viewfab) .mm-cfab,body:has(#mm-bar) .mm-cfab{bottom:calc(86px + env(safe-area-inset-bottom, 0px) + var(--mm-vvlift, 0px))}
  .mm-cb{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom, 0px) + var(--mm-vvlift, 0px));left:16px;z-index:8000;width:338px;max-width:94vw;background:#fff;color:#1a1a1a;border-radius:14px;box-shadow:0 14px 44px rgba(0,0,0,.28);padding:1.1rem 1.1rem .95rem;transform:translateX(-120%);opacity:0;transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .22s ease}
  .mm-cb.show{transform:none;opacity:1}
  @media(prefers-reduced-motion:reduce){ .mm-cb{transition:opacity .2s} }
  @media(max-width:370px){ .mm-cb{padding-left:.55rem;padding-right:.55rem} }   /* widgetens 300px skal få plass */
  .mm-cb[hidden]{display:none}
  /* Ring-FAB skal ikke stikke frem bak en åpen lead-boble (tronds-funn, nå standard) */
  body:has(.mm-cb.show) .mm-cfab{opacity:0;pointer-events:none}
  .mm-cb-t{display:block;font-size:1.05rem;line-height:1.25;margin:0 0 .7rem;padding-right:1.2rem;font-family:var(--heading)}
  .mm-cb .ucform{margin:0;max-width:none}
  .mm-cb input[type=text],.mm-cb input[type=tel],.mm-cb select{width:100%;padding:.6rem .8rem;margin:0 0 .5rem;border:1px solid #ccc;border-radius:6px;font:inherit;box-sizing:border-box;background:#fff;color:inherit}
  .mm-cb .consent{display:flex;gap:.45rem;align-items:flex-start;font-size:.78rem;margin:0 0 .6rem;color:#475569;text-align:left}
  .mm-cb .consent input{width:auto;margin:.2rem 0 0}
  .mm-cb .btn{width:100%;text-align:center}
  .mm-cb-x{position:absolute;top:4px;right:12px;border:0;background:none;font-size:1.6rem;line-height:1;cursor:pointer;color:#64748b}
  /* Ucraft dividers are thin invisible spacers (border 0), not visible rules — render as spacing only */
  hr.div{border:0;border-top:1px solid #e2e8f0;height:0;margin:1.1rem 0}
  hr.div.div-blank{display:none}                     /* legacy Ucraft spacer: only-mobile in the original → nothing on desktop */
  @media(max-width:600px){ hr.div.div-blank{display:block;border-top:0;margin:1.1rem 0} }  /* mobile: the original's spacing */
  .mm-divider hr.div.div-blank{display:block;border-top:1px dashed #cbd5e1}  /* edit mode: visible hint so it can be selected */
  footer.site{background:#111;color:#bbb;padding:22px 0 30px;margin-top:0;font-size:.82rem}
  footer.site a{color:#ddd}
  .mm-velkomst[hidden]{display:none!important}
  /* Bunnkort, IKKE heldekkende modal (Simons ordre 19.8, designgap-tiltak 8):
     kundens aller første inntrykk skal være HEROEN, ikke en dialogboks. Kortet
     glir opp nederst, blokkerer ingenting, og siden bak er fullt scrollbar. */
  .mm-velkomst{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:9800;background:none;display:flex;justify-content:center;padding:0 14px calc(14px + env(safe-area-inset-bottom,0px));pointer-events:none}
  .mm-velkomst-boks{background:#fff;color:#1c2430;max-width:560px;width:100%;border-radius:18px;padding:0;box-shadow:0 24px 80px rgba(8,11,18,.4),0 4px 18px rgba(8,11,18,.18);margin:0;max-height:min(72vh,620px);overflow-y:auto;pointer-events:auto;animation:mmVelkomstOpp .55s cubic-bezier(.2,.9,.25,1)}
  .mm-velkomst-topp{background:linear-gradient(135deg,var(--btnbg,#2563eb),var(--btnbg2,#1d4ed8));color:#ffffff;padding:1.9rem 1.9rem 1.6rem;position:relative;overflow:hidden}
  .mm-velkomst-topp::after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.1)}
  .mm-velkomst-kicker{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.85;margin:0 0 .45rem}
  .mm-velkomst-topp h2,.mm-velkomst-topp #mm-velkomst-t{font-family:var(--heading);font-size:clamp(1.35rem,4.4vw,1.75rem);font-weight:700;margin:0;line-height:1.2;position:relative;color:#ffffff}
  .mm-velkomst-kicker{color:#ffffff}
  .mm-velkomst-innhold{padding:1.4rem 1.9rem 1.5rem}
  .mm-velkomst-inn{font-size:.97rem;line-height:1.6;margin:.5rem 0}
  .mm-velkomst-liste{list-style:none;margin:1rem 0;padding:0;display:grid;gap:.75rem}
  .mm-velkomst-liste li{display:flex;gap:.75rem;align-items:flex-start;font-size:.93rem;line-height:1.55}
  .mm-velkomst-hake{flex:none;width:26px;height:26px;border-radius:9px;background:linear-gradient(135deg,var(--btnbg,#2563eb),var(--btnbg2,#1d4ed8));color:#ffffff;display:grid;place-items:center;margin-top:1px;box-shadow:0 6px 14px rgba(var(--mm-accent-rgb,37,99,235),.28)}
  .mm-velkomst-hake svg{width:14px;height:14px}
  .mm-velkomst-boks .btn{width:100%;text-align:center;margin:.7rem 0 .2rem;cursor:pointer;border:0;font-size:15px}
  @media(max-width:430px){
    .mm-velkomst-topp{padding:1.3rem 1.3rem 1.1rem}
    .mm-velkomst-innhold{padding:1.1rem 1.3rem 1.2rem}
    .mm-velkomst-inn{font-size:.92rem}
    .mm-velkomst-liste li{font-size:.89rem}
  }
  @keyframes mmVelkomstOpp{from{opacity:0;transform:translateY(46px)}}
  @media(prefers-reduced-motion:reduce){.mm-velkomst,.mm-velkomst-boks{animation:none}}
  /* Samtykkebanneret (30.9.2026, Simon: «så diskret at folk ikke klikker»): hvitt kort med overskrift og to like store
     knapper – like lett å avslå som å godta (Datatilsynet). PC: kort nede til venstre. Mobil: ark fra bunnen. */
  #cc{position:fixed;left:16px;bottom:calc(16px + var(--mm-vvlift, 0px));z-index:9000;width:min(420px,calc(100% - 32px));box-sizing:border-box;background:#fff;color:#1f1f1f;border-radius:18px;box-shadow:0 24px 60px -12px rgba(0,0,0,.38),0 0 0 1px rgba(0,0,0,.06);padding:1.25rem 1.25rem 1.15rem;display:none;font-size:.95rem;text-align:left}
  /* keep the floating contact button / callback popup clear of the cookie banner so its buttons stay clickable */
  body:has(#cc.show) .mm-cb{bottom:calc(var(--mm-cclift, 96px) + env(safe-area-inset-bottom, 0px) + var(--mm-vvlift, 0px))}
  /* Ringeknappen står til høyre og banneret til venstre (420 px): den løftes bare når skjermen er så smal at de
     kan møtes. Før ble knappen løftet en hel bannerhøyde også på brede skjermer (Simon 30.9, totalteknisk). */
  @media(max-width:860px){body:has(#cc.show) .mm-cfab{bottom:calc(var(--mm-cclift, 96px) + env(safe-area-inset-bottom, 0px) + var(--mm-vvlift, 0px))}}
  #cc.show{display:block;animation:ccInn .45s cubic-bezier(.2,.8,.2,1) .25s both}
  @keyframes ccInn{from{opacity:0;transform:translateY(28px)}}
  @media(prefers-reduced-motion:reduce){#cc.show{animation:none}}
  #cc .ccwrap{display:block}
  #cc .cctopp{display:flex;align-items:center;gap:.65rem;margin:0 0 .5rem}
  #cc .ccikon{width:36px;height:36px;flex:none;border-radius:50%;display:grid;place-items:center;background:#f3f1ef;background:color-mix(in srgb,var(--brand) 14%,#fff);color:var(--brand)}
  #cc .ccikon svg{width:20px;height:20px;display:block}
  #cc .cctit{font-weight:700;font-size:1.06rem;line-height:1.3;color:#111;margin:0}
  #cc p{margin:0 0 1rem;line-height:1.5;color:#474747;font-size:.92rem}
  #cc .ccles{color:inherit;text-decoration:underline;font-weight:600;white-space:nowrap}
  #cc .ccbtns{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
  #cc button{padding:.8rem 1rem;border:0;border-radius:12px;cursor:pointer;font:inherit;font-weight:700;font-size:.95rem;line-height:1.2}
  #cc .acc{background:var(--btnbg,var(--brand));color:#ffffff}  /* L#48: arv button_color — hvit på neon målte 1,3:1 */
  #cc .dec{background:#ecebe9;color:#1f1f1f}
  #cc button:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
  @media(max-width:600px){#cc{left:0;right:0;width:auto;bottom:var(--mm-vvlift, 0px);border-radius:20px 20px 0 0;padding:1.2rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom, 0px))}}
  nav.main a{letter-spacing:.3px;font-size:16px;font-family:'Inter',sans-serif}
  .logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}
  .logo img{height:78px;width:auto;max-width:360px;object-fit:contain}
  .logo .wm{display:flex;flex-direction:column;line-height:1.05}
  .logo .wm .nm{font-family:var(--heading);font-weight:700;color:var(--brand);font-size:1rem;letter-spacing:.5px;text-transform:uppercase}
  .logo .wm .tg{font-size:.7rem;letter-spacing:1px;color:var(--brand);text-transform:uppercase}
  .langsw{display:flex;gap:.15rem;align-items:center;margin-left:.35rem;padding-left:1rem;
    border-left:1px solid #e1dacd;flex:0 0 auto;white-space:nowrap}
  .langsw a{font-size:.72rem;font-weight:700;letter-spacing:.7px;color:#141b2e;text-decoration:none;
    padding:.3rem .5rem;border-radius:999px;opacity:.55;line-height:1;transition:opacity .15s}
  .langsw a:hover{opacity:1;color:#a81f24}
  .langsw a.active{opacity:1;color:#a81f24;box-shadow:inset 0 0 0 1.5px currentColor}

  /* Klossene 7.9.2026: faktastripe, personkort, listepost, tabell — egen style-blokk etter 31-css2
     (som lukker den første). Farger går via temaets variabler (--heading, --hcol, --mm-accent …) og
     currentColor-blandinger, så de fungerer på lyse OG mørke bånd (.ondark) uten egne fargekart. */
  .mm-kloss-tom{background:#eef2ff;border:1px dashed #94a3b8;padding:1rem;border-radius:8px;text-align:center;color:#334155;margin:0}
  /* faktastripe */
  .mm-fakta{display:grid;grid-template-columns:repeat(var(--mm-fakta-n,3),minmax(0,1fr));gap:1.4rem 2rem;align-items:start}
  .mm-fakta-i{display:flex;flex-direction:column;gap:.2rem;min-width:0}
  .mm-fakta-tall{font-family:var(--heading);font-weight:700;font-size:clamp(2rem,1.4rem + 2.2vw,3.1rem);line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--mm-fakta-farge,var(--mm-accent,var(--brand)))}
  .mm-fakta-etikett{font-weight:600;font-size:.95rem;line-height:1.3;color:var(--hcol)}
  .mm-fakta-font-utility .mm-fakta-tall{font-family:var(--mm-font-utility,var(--heading));font-weight:600;letter-spacing:0}
  .mm-fakta-font-body .mm-fakta-tall{font-family:var(--body);font-weight:700}
  .mm-fakta-under{font-size:.82rem;line-height:1.4;color:var(--mm-muted)}
  .mm-fakta.center{text-align:center}.mm-fakta.center .mm-fakta-i{align-items:center}
  .mm-fakta-kort .mm-fakta-i{background:#fff;color:#1c2430;border-radius:14px;padding:1.25rem 1.2rem;box-shadow:0 8px 26px rgba(15,20,40,.09)}
  .mm-fakta-kort .mm-fakta-etikett{color:#1c2430}
  .mm-fakta-linje{gap:0}
  .mm-fakta-linje .mm-fakta-i{padding:.4rem 1.6rem}
  .mm-fakta-linje .mm-fakta-i:first-child{padding-left:0}
  .mm-fakta-linje .mm-fakta-i+.mm-fakta-i{border-left:1px solid rgba(127,127,127,.3)}
  .mm-fakta.center.mm-fakta-linje .mm-fakta-i:first-child{padding-left:1.6rem}
  .mm-fakta-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.45em;vertical-align:baseline;flex:none;box-shadow:0 0 0 1px rgba(127,127,127,.28)}
  /* Skinne (#246): sekvens med retning – 2 px linje gjennom nodene, valgfri pil mellom stegene.
     Nodene ligger PÅ linjen; pilen tegnes i mellomrommet med ::after på hvert element unntatt det siste. */
  .mm-fakta-skinne{--mm-fakta-node:10px;gap:1.4rem 0;position:relative}
  .mm-fakta-start{grid-column:1/-1;margin:0 0 .9rem;font-size:.86rem;font-weight:600;letter-spacing:.02em;opacity:.75}
  .mm-fakta-node{display:block;width:var(--mm-fakta-node);height:var(--mm-fakta-node);border-radius:50%;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));flex:none}
  .mm-fakta-skinne .mm-fakta-i{position:relative}
  .mm-fakta-skinne-vannrett .mm-fakta-i{padding-right:1.4rem}
  .mm-fakta-skinne-vannrett .mm-fakta-i::before{content:"";position:absolute;left:var(--mm-fakta-node);right:0;top:calc(var(--mm-fakta-node)/2 - 1px);height:2px;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));opacity:.45}
  .mm-fakta-skinne-vannrett .mm-fakta-i:last-child::before{display:none}
  .mm-fakta-skinne-vannrett.mm-fakta-pil .mm-fakta-i::after{content:"";position:absolute;right:.35rem;top:calc(var(--mm-fakta-node)/2 - 4px);width:8px;height:8px;border-top:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));border-right:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));transform:rotate(45deg);opacity:.65}
  .mm-fakta-skinne-vannrett.mm-fakta-pil .mm-fakta-i:last-child::after{display:none}
  .mm-fakta-skinne-loddrett{grid-template-columns:1fr!important;gap:0}
  .mm-fakta-skinne-loddrett .mm-fakta-i{display:grid;grid-template-columns:var(--mm-fakta-node) 1fr;column-gap:.9rem;padding:0 0 1.5rem}
  .mm-fakta-skinne-loddrett .mm-fakta-i>*{grid-column:2}
  .mm-fakta-skinne-loddrett .mm-fakta-node{grid-column:1;grid-row:1;margin-top:.5em}
  .mm-fakta-skinne-loddrett .mm-fakta-i::before{content:"";position:absolute;left:calc(var(--mm-fakta-node)/2 - 1px);top:var(--mm-fakta-node);bottom:0;width:2px;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));opacity:.45}
  .mm-fakta-skinne-loddrett .mm-fakta-i:last-child{padding-bottom:0}
  .mm-fakta-skinne-loddrett .mm-fakta-i:last-child::before{display:none}
  .mm-fakta-skinne-loddrett.mm-fakta-pil .mm-fakta-i::after{content:"";position:absolute;left:calc(var(--mm-fakta-node)/2 - 4px);bottom:.35rem;width:8px;height:8px;border-right:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));border-bottom:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));transform:rotate(45deg);opacity:.65}
  .mm-fakta-skinne-loddrett.mm-fakta-pil .mm-fakta-i:last-child::after{display:none}
  /* #312 (hamroc): tegn_inn – skinnen tegnes inn steg for steg første gang den kommer i bildet (mm-fakta-go settes av JS) */
  html.js .mm-fakta-tegn .mm-fakta-node{transform:scale(0)}
  html.js .mm-fakta-tegn .mm-fakta-i::before{transform:scaleX(0);transform-origin:left center}
  html.js .mm-fakta-tegn.mm-fakta-skinne-loddrett .mm-fakta-i::before{transform:scaleY(0);transform-origin:top center}
  html.js .mm-fakta-tegn .mm-fakta-i>:not(.mm-fakta-node){opacity:0;transform:translateY(6px)}
  html.js .mm-fakta-tegn.mm-fakta-go .mm-fakta-node{animation:mmFaktaNode .45s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--mm-fakta-i,0)*.32s)}
  html.js .mm-fakta-tegn.mm-fakta-go .mm-fakta-i::before{animation:mmFaktaLinje .45s ease-out forwards;animation-delay:calc(var(--mm-fakta-i,0)*.32s + .2s)}
  html.js .mm-fakta-tegn.mm-fakta-go .mm-fakta-i>:not(.mm-fakta-node){animation:mmFaktaTekst .5s ease-out forwards;animation-delay:calc(var(--mm-fakta-i,0)*.32s + .12s)}
  @keyframes mmFaktaNode{to{transform:scale(1)}}
  @keyframes mmFaktaLinje{to{transform:scaleX(1) scaleY(1)}}
  @keyframes mmFaktaTekst{to{opacity:1;transform:none}}
  @media(prefers-reduced-motion:reduce){html.js .mm-fakta-tegn .mm-fakta-node,html.js .mm-fakta-tegn .mm-fakta-i::before,html.js .mm-fakta-tegn .mm-fakta-i>:not(.mm-fakta-node){transform:none;opacity:1;animation:none}}
  /* #309 (landsradet): kalenderskala – punktene står der datoen faller i året, neste ikke-passerte utheves, href per element */
  .mm-fakta-lenke{display:flex;flex-direction:column;gap:.2rem;align-items:inherit;color:inherit;text-decoration:none;min-width:0}
  .mm-fakta-lenke:hover .mm-fakta-etikett,.mm-fakta-lenke:focus-visible .mm-fakta-etikett{text-decoration:underline;text-underline-offset:3px}
  .mm-fakta-har-neste .mm-fakta-neste .mm-fakta-tall{color:var(--mm-fakta-neste,var(--btnbg,var(--mm-accent,#e6529e)));font-size:clamp(2.4rem,1.6rem + 2.8vw,3.8rem)}
  .mm-fakta-har-neste .mm-fakta-i:not(.mm-fakta-neste) .mm-fakta-tall{opacity:.6}
  .mm-fakta-lop .mm-fakta-tall{font-size:clamp(1.5rem,1rem + 1.4vw,2.1rem);opacity:.85}
  .mm-fakta-ytre .mm-fakta-start{margin:0 0 1.4rem}
  .mm-fakta-kalender .mm-fakta-node,.mm-fakta-kal-spor{display:none}
  .mm-fakta-kalender .mm-fakta-i::before,.mm-fakta-kalender .mm-fakta-i::after{display:none}
  @media(min-width:820px){
    .mm-fakta-kalender.mm-fakta-skinne-vannrett{display:grid;grid-template-columns:repeat(100,minmax(0,1fr));column-gap:0;row-gap:0;position:relative;padding-top:calc(var(--mm-fakta-node) + 1.1rem);margin-top:.6rem}
    .mm-fakta-kalender.mm-fakta-kal-lop.mm-fakta-skinne-vannrett{grid-template-columns:repeat(112,minmax(0,1fr))}
    .mm-fakta-kal-spor{display:block;position:absolute;left:0;top:calc(var(--mm-fakta-node)/2 - 1px);height:2px;width:100%;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,#e6529e)))}
    .mm-fakta-kal-lop .mm-fakta-kal-spor{width:calc(100%*100/112)}
    .mm-fakta-kal-node{position:absolute;top:calc(var(--mm-fakta-node)/-2 + 1px);left:var(--mm-fakta-pos,0%);width:var(--mm-fakta-node);height:var(--mm-fakta-node);margin-left:calc(var(--mm-fakta-node)/-2);border-radius:50%;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,#e6529e)))}
    .mm-fakta-kal-node.mm-fakta-kal-neste{transform:scale(1.7);background:var(--mm-fakta-neste,var(--btnbg,var(--mm-accent,#e6529e)));box-shadow:0 0 0 3px rgba(255,255,255,.7)}
    .mm-fakta-kal-lop .mm-fakta-kal-node.mm-fakta-kal-lopnode{left:calc(100%*106/112);background:transparent;border:2px dashed var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,#e6529e)));box-sizing:border-box}
    .mm-fakta-kalender .mm-fakta-i{padding:0 .3rem;text-align:center;align-items:center;min-width:0}
    .mm-fakta-kalender .mm-fakta-lop{grid-column:101/span 12}
  }
  @media(max-width:819px){
    .mm-fakta-kalender.mm-fakta-skinne-vannrett,.mm-fakta-kalender.mm-fakta-skinne-loddrett{grid-template-columns:1fr!important;gap:0}
    .mm-fakta-kalender .mm-fakta-i{display:grid;grid-template-columns:var(--mm-fakta-node) 1fr;column-gap:.9rem;padding:0 0 1.4rem;position:relative;grid-column:auto!important}
    .mm-fakta-kalender .mm-fakta-i>*{grid-column:2}
    .mm-fakta-kalender .mm-fakta-node{display:block;grid-column:1;grid-row:1;margin-top:.5em}
    .mm-fakta-kalender .mm-fakta-neste .mm-fakta-node{transform:scale(1.6);background:var(--mm-fakta-neste,var(--btnbg,var(--mm-accent,#e6529e)))}
    .mm-fakta-kalender .mm-fakta-i::before{display:block;content:"";position:absolute;left:calc(var(--mm-fakta-node)/2 - 1px);top:var(--mm-fakta-node);bottom:0;width:2px;background:var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,#e6529e)))}
    .mm-fakta-kalender .mm-fakta-i:last-child{padding-bottom:0}
    .mm-fakta-kalender .mm-fakta-i:last-child::before{display:none}
  }
  /* #308 (landsradet): fristkort – neste frist som klikkbart kort; negativ settings.mt på seksjonen legger det over heroen */
  section.band[style*="margin-top:-"]{position:relative;z-index:2}
  .mm-fristkort-wrap{display:grid;grid-template-columns:repeat(var(--mm-frist-n,1),minmax(0,1fr));gap:1.2rem}
  .mm-frist-n-2{--mm-frist-n:2}.mm-frist-n-3{--mm-frist-n:3}.mm-frist-n-4{--mm-frist-n:4}
  .mm-fristkort{position:relative;display:flex;flex-direction:column;gap:.3rem;padding:1.4rem 3.6rem 1.4rem 1.5rem;text-decoration:none;color:#1c2430;line-height:1.35;min-width:0}
  .mm-frist-kort{background:#fff;border-radius:var(--mm-card-radius,14px);box-shadow:0 14px 38px rgba(0,0,0,.14)}
  .mm-frist-flate{padding-left:0;color:inherit}
  .mm-frist-kicker{font-family:var(--mm-font-utility,var(--body));font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mm-fakta-neste,var(--btnbg,var(--mm-accent,#e6529e)))}
  .mm-frist-dato{font-family:var(--heading);font-weight:700;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.3rem);line-height:1.1;letter-spacing:-.01em;color:var(--hcol)}
  .mm-frist-flate .mm-frist-dato{color:inherit}
  .mm-frist-ordning{font-size:1.02rem;font-weight:600}
  .mm-frist-meta{font-size:.9rem;color:#475569}
  .mm-frist-flate .mm-frist-meta{color:inherit;opacity:.8}
  .mm-fristkort .mm-tk-pil{right:1.1rem;bottom:auto;top:50%;transform:translateY(-50%)}
  a.mm-fristkort:hover .mm-tk-pil,a.mm-fristkort:focus-visible .mm-tk-pil{transform:translateY(-50%) translateX(3px)}
  a.mm-fristkort:hover .mm-frist-ordning{text-decoration:underline;text-underline-offset:3px}
  .mm-frist-tom{margin:0;font-size:.95rem;opacity:.8}
  @media(max-width:640px){.mm-fristkort-wrap{grid-template-columns:1fr}}
  /* #311 (hamroc): modellkort – kort med bilde, klassemarkør, nøkkeltall og CTA; filter, faner og kort/tabell-bryter (JS i 70-scripts) */
  .mm-modellkort{--mm-mk-cols:3}
  .mm-mk-verktoy{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;align-items:flex-end;margin:0 0 1.4rem}
  .mm-mk-fl{display:block;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.75;margin:0 0 .4rem}
  .mm-mk-chips,.mm-mk-faner{display:flex;gap:.4rem;flex-wrap:wrap}
  .mm-mk-chip,.mm-mk-fane,.mm-mk-bryter{font:inherit;font-size:.88rem;font-weight:600;line-height:1;padding:.55rem .95rem;border-radius:999px;border:1.5px solid rgba(127,127,127,.35);background:transparent;color:inherit;cursor:pointer;white-space:nowrap}
  .mm-mk-chip.akt,.mm-mk-fane.akt{background:var(--btnbg,var(--mm-accent,#e6529e));border-color:var(--btnbg,var(--mm-accent,#e6529e));color:var(--btncol,#fff)}
  .mm-mk-faner{border-bottom:1px solid rgba(127,127,127,.25);padding-bottom:.5rem}
  .mm-mk-fane{border-radius:8px}
  .mm-mk-hoyre{margin-left:auto;display:flex;gap:.8rem;align-items:center;font-size:.88rem}
  .mm-mk-telling{opacity:.75}
  .mm-mk-grid{display:grid;grid-template-columns:repeat(var(--mm-mk-cols),minmax(0,1fr));gap:1.4rem}
  .mm-mk-kort{display:flex;flex-direction:column;background:#fff;color:#1c2430;border-radius:var(--mm-card-radius,14px);border:1px solid rgba(15,23,42,.08);box-shadow:0 1px 3px rgba(15,23,42,.06);overflow:hidden;position:relative}
  .mm-mk-kort.mm-mk-skjult,.mm-mk-tabell tr.mm-mk-skjult{display:none}
  .mm-mk-bilde{background:#fff;padding:1rem;display:flex;align-items:center;justify-content:center;aspect-ratio:var(--mm-mk-ratio,4 / 5);max-height:280px}
  .mm-mk-bilde img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
  .mm-mk-body{padding:1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
  .mm-mk-klasse{align-self:flex-start;font-family:var(--mm-font-utility,var(--body));font-size:.74rem;font-weight:700;letter-spacing:.06em;padding:.25rem .6rem;border-radius:999px;background:var(--mm-fakta-neste,var(--btnbg,var(--mm-accent,#e6529e)));color:var(--btncol,#fff)}
  .mm-mk-navn{margin:0;font-size:1.25rem;line-height:1.2;color:#1c2430}
  .mm-mk-felter{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.45rem .9rem}
  .mm-mk-felter>div{min-width:0;border-top:1px solid rgba(15,23,42,.1);padding-top:.4rem}
  .mm-mk-felter dt{margin:0;font-family:var(--mm-font-utility,inherit);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
  .mm-mk-felter dd{margin:0;font-size:.95rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
  .mm-mk-alle summary{cursor:pointer;font-size:.88rem;font-weight:600;color:var(--btnol,var(--hcol,#1c2430));text-decoration:underline;text-underline-offset:3px;list-style:none;display:inline-flex;align-items:center;gap:.35rem}   /* #321: aldri knappefargen som tekst på hvitt (gul = 1,8:1) */
  .mm-mk-bilde-tom{background:#f1f5f9}
  .mm-mk-bilde-tom::before{content:"";width:38%;aspect-ratio:1;border-radius:50%;background:rgba(15,23,42,.06)}
  .mm-mk-alle summary::-webkit-details-marker{display:none}
  .mm-mk-alle summary::after{content:"";width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
  .mm-mk-alle[open] summary::after{transform:rotate(-135deg) translateY(2px)}
  .mm-mk-alle .mm-mk-felter{margin-top:.6rem}
  .mm-mk-cta{margin-top:auto;text-align:center}
  .mm-mk-tabellwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(15,23,42,.1);border-radius:12px}
  .mm-mk-tabell{width:100%;border-collapse:separate;border-spacing:0;font-size:.92rem;font-variant-numeric:tabular-nums;background:#fff;color:#1c2430}
  .mm-mk-tabell th,.mm-mk-tabell td{padding:.6rem .8rem;text-align:left;border-bottom:1px solid rgba(15,23,42,.1);white-space:nowrap}
  .mm-mk-tabell thead th{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;opacity:.75;background:#f8fafc}
  .mm-mk-tabell tbody th{position:sticky;left:0;background:#fff;font-weight:700;box-shadow:2px 0 0 rgba(15,23,42,.06)}
  .mm-mk-tabell thead th:first-child{position:sticky;left:0;z-index:1}
  .mm-mk-tabell tbody th a{color:inherit}
  .mm-mk-vis-kort .mm-mk-tabellwrap{display:none}.mm-mk-vis-tabell .mm-mk-grid{display:none}
  .mm-mk-fotnoter{margin:1.2rem 0 0;font-size:.85rem;opacity:.8}
  @media(max-width:900px){.mm-mk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:640px){.mm-mk-grid{grid-template-columns:1fr}.mm-mk-hoyre{margin-left:0;width:100%;justify-content:space-between}}   /* chips bryter (wrap) også på mobil – rulling uten hint gjemte siste klasse (#321c) */
  /* #323 (hamroc): knapperad – to knapper i én flex-rad, bryter på smal skjerm, justert etter plasseringen */
  .m.mm-btnrad{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
  .m.mm-btnrad.center{justify-content:center}.m.mm-btnrad.right{justify-content:flex-end}
  .m.mm-btnrad .btn{margin:0}
  /* Ankerhopp (hamroc QA 24.9): ankre får luft lik nav-høyden, så #mål ikke havner under menyen */
  [id]{scroll-margin-top:calc(var(--mm-navh,76px) + 12px)}
  /* #310 (landsradet): tekstkort som overlapper et hjørne av bildet – hvitt kort med tittel, tekst og rund pil; under bildet på mobil */
  .mm-tk-box{margin-bottom:0}
  .mm-tk-box-br,.mm-tk-box-bl{margin-bottom:var(--mm-tk-ov,32px)}
  .mm-tk-box-tr,.mm-tk-box-tl{margin-top:var(--mm-tk-ov,32px)}
  .mm-tkort{position:absolute;z-index:2;display:flex;flex-direction:column;gap:.35rem;max-width:min(78%,340px);padding:1.1rem 3.4rem 1.1rem 1.25rem;background:#fff;color:#1c2430;border-radius:var(--mm-card-radius,14px);box-shadow:0 14px 38px rgba(0,0,0,.14);text-decoration:none;text-align:left;line-height:1.35}
  .mm-tk-br{right:calc(-1*min(var(--mm-tk-ov,32px),16px));bottom:calc(-1*var(--mm-tk-ov,32px))}
  .mm-tk-bl{left:calc(-1*min(var(--mm-tk-ov,32px),16px));bottom:calc(-1*var(--mm-tk-ov,32px))}
  .mm-tk-tr{right:calc(-1*min(var(--mm-tk-ov,32px),16px));top:calc(-1*var(--mm-tk-ov,32px))}
  .mm-tk-tl{left:calc(-1*min(var(--mm-tk-ov,32px),16px));top:calc(-1*var(--mm-tk-ov,32px))}
  .mm-tk-t{font-family:var(--heading);font-weight:600;font-size:1.1rem;color:var(--hcol)}
  .mm-tk-x{font-size:.9rem;color:#475569}
  .mm-tk-pil{position:absolute;right:1rem;bottom:1rem;width:2rem;height:2rem;border-radius:50%;background:var(--btnbg,var(--mm-accent,#e6529e));display:flex;align-items:center;justify-content:center;transition:transform .25s cubic-bezier(.2,.7,.2,1)}
  .mm-tk-pil::before{content:"";width:.55rem;height:.55rem;border-right:2px solid #fff;border-top:2px solid #fff;transform:translateX(-1px) rotate(45deg)}
  a.mm-tkort:hover .mm-tk-pil,a.mm-tkort:focus-visible .mm-tk-pil{transform:translateX(3px)}
  a.mm-tkort:hover .mm-tk-t{text-decoration:underline;text-underline-offset:3px}
  @media(max-width:640px){.mm-tk-box{margin:0!important}.mm-tkort{position:relative;left:auto;right:auto;top:auto;bottom:auto;max-width:none;margin:calc(-1*min(var(--mm-tk-ov,32px),24px)) .75rem 0}}
  :is(section.band.ondark,.col.colbg.ondark) .mm-fakta-swatch{box-shadow:0 0 0 1px rgba(255,255,255,.35)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-fakta:not(.mm-fakta-kort):not([style*="--mm-fakta-farge"]) .mm-fakta-tall{color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-fakta:not(.mm-fakta-kort) :is(.mm-fakta-etikett,.mm-fakta-under){color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-fakta-linje .mm-fakta-i+.mm-fakta-i{border-color:rgba(255,255,255,.3)}
  @media(max-width:720px){
    .mm-fakta{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1.4rem}
    .mm-fakta-linje{gap:0}.mm-fakta-linje .mm-fakta-i{padding:.7rem 1rem}
    .mm-fakta-linje .mm-fakta-i:nth-child(odd){padding-left:0;border-left:0}
  }
  @media(max-width:420px){
    .mm-fakta,.mm-fakta-linje{grid-template-columns:1fr}
    .mm-fakta-linje .mm-fakta-i{padding:.7rem 0;border-left:0!important}
    .mm-fakta-linje .mm-fakta-i+.mm-fakta-i{border-top:1px solid rgba(127,127,127,.3)}
  }
  /* Skinnen er alltid loddrett under 820 px — en vannrett tidsakse blir uleselig på mobil,
     og 2-kolonners-fallbacket på 720 px ville brutt sekvensen helt (#246). */
  @media(max-width:820px){
    .mm-fakta-skinne-vannrett{grid-template-columns:1fr!important;gap:0}
    .mm-fakta-skinne-vannrett .mm-fakta-i{display:grid;grid-template-columns:var(--mm-fakta-node) 1fr;column-gap:.9rem;padding:0 0 1.5rem}
    .mm-fakta-skinne-vannrett .mm-fakta-i>*{grid-column:2}
    .mm-fakta-skinne-vannrett .mm-fakta-node{grid-column:1;grid-row:1;margin-top:.5em}
    .mm-fakta-skinne-vannrett .mm-fakta-i::before{left:calc(var(--mm-fakta-node)/2 - 1px);right:auto;top:var(--mm-fakta-node);bottom:0;width:2px;height:auto}
    .mm-fakta-skinne-vannrett .mm-fakta-i:last-child{padding-bottom:0}
    .mm-fakta-skinne-vannrett.mm-fakta-pil .mm-fakta-i::after{left:calc(var(--mm-fakta-node)/2 - 4px);right:auto;top:auto;bottom:.35rem;border-top:0;border-right:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))));border-bottom:2px solid var(--mm-fakta-skinne,var(--mm-fakta-farge,var(--mm-accent,var(--brand))))}
  }
  /* personkort */
  .mm-personkort{display:grid;gap:2rem 1.6rem}
  .mm-person{display:flex;flex-direction:column;gap:.5rem;min-width:0}
  .mm-person-bilde{width:112px;aspect-ratio:1;overflow:hidden;border-radius:50%;flex:none;background:rgba(127,127,127,.12)}
  .mm-person-bilde img{width:100%;height:100%;object-fit:cover;display:block}
  .mm-personkort-kvadrat .mm-person-bilde{width:100%;max-width:300px;aspect-ratio:4/5;border-radius:14px}
  .mm-person-navn{margin:.3rem 0 0;font-size:1.08rem;font-weight:700}
  .mm-person-navn a{color:inherit;text-decoration:none}
  .mm-person-navn a:hover{text-decoration:underline;text-underline-offset:3px}
  .mm-person-rolle{display:block;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-family:var(--mm-font-utility,inherit);color:var(--mm-accent,var(--brand));margin:.15rem 0 .35rem}
  .mm-person-t{font-size:.94rem;line-height:1.55}.mm-person-t p{margin:.2rem 0}
  .mm-person-kontakt{display:flex;flex-direction:column;gap:.3rem;margin-top:.4rem;font-size:.92rem}
  .mm-person-kontakt a{display:inline-flex;align-items:center;gap:.45rem;color:inherit;text-decoration:none;font-weight:600}
  .mm-person-kontakt a:hover{text-decoration:underline;text-underline-offset:3px}
  .mm-person-kontakt svg{width:1em;height:1em;flex:none;opacity:.7}
  .mm-personkort.center{text-align:center}.mm-personkort.center .mm-person{align-items:center}
  :is(section.band.ondark,.col.colbg.ondark) .mm-person :is(.mm-person-navn,.mm-person-navn a,.mm-person-t,.mm-person-kontakt a){color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-person-rolle{color:rgba(255,255,255,.78)}
  @media(max-width:720px){.mm-personkort{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
  /* galleri-filter (#253): knapperad over rutenettet, spenner alle kolonner; skjulte fliser tas ut av flyten */
  .mm-galfilter{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center;margin:0 0 .35rem;font-family:var(--mm-font-utility,var(--body))}
  .mm-galf{appearance:none;border:1px solid color-mix(in srgb,currentColor 28%,transparent);background:transparent;color:inherit;border-radius:999px;padding:.32rem .8rem;font:inherit;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;line-height:1.2}
  .mm-galf:hover{border-color:currentColor}
  .mm-galf.on{background:var(--mm-accent,var(--brand));border-color:var(--mm-accent,var(--brand));color:#fff}
  .mm-galf-n{font-size:.78rem;opacity:.65;margin-left:.25rem}
  .gallery .gitem.mm-galskjult{display:none!important}
  /* palett (#254): store fargefelt med navn og forklaring UNDER feltet, på seksjonsflaten */
  .mm-palett-rad{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--mm-palett-n,5),minmax(0,1fr));gap:1rem 1.1rem}
  .mm-palett-i{display:flex;flex-direction:column;gap:.45rem;min-width:0}
  .mm-palett-i>.mm-palett-felt{display:block;height:var(--mm-palett-h,96px);border-radius:8px;box-shadow:inset 0 0 0 1px rgba(127,127,127,.22)}
  .mm-palett-stil-stripe .mm-palett-i>.mm-palett-felt{border-radius:6px}
  .mm-palett-navn{font-weight:600;font-size:.92rem;line-height:1.3;color:var(--hcol)}
  .mm-palett-et-mono .mm-palett-navn{font-family:var(--mm-font-utility,var(--body));font-weight:600;font-size:.74rem;letter-spacing:.09em;text-transform:uppercase}
  .mm-palett-tekst{font-size:.86rem;line-height:1.45;color:color-mix(in srgb,currentColor 78%,transparent)}
  .mm-palett-kilde{margin:.9rem 0 0;font-size:.8rem;line-height:1.4;color:var(--mm-muted)}
  .ondark .mm-palett-kilde{color:rgba(255,255,255,.8)}
  @media(max-width:720px){.mm-palett-rad{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.mm-palett[style*="--mm-palett-n:5"] .mm-palett-rad,.mm-palett[style*="--mm-palett-n:6"] .mm-palett-rad{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @media(max-width:460px){.mm-personkort{grid-template-columns:1fr!important}}
  /* listepost */
  .mm-lp-liste{list-style:none;margin:0;padding:0}
  .mm-lp{display:flex;align-items:flex-start;gap:1.1rem;padding:1.15rem 0}
  .mm-lp-tett .mm-lp{padding:.65rem 0}
  .mm-lp-linjer .mm-lp{border-top:1px solid rgba(127,127,127,.26)}
  .mm-lp-linjer .mm-lp:last-child{border-bottom:1px solid rgba(127,127,127,.26)}
  .mm-lp-nr{flex:none;min-width:2ch;padding-top:.32rem;font-family:var(--mm-font-utility,var(--heading));font-variant-numeric:tabular-nums;font-weight:600;font-size:.86rem;letter-spacing:.06em;color:var(--mm-accent,var(--brand))}
  .mm-lp-ikon{flex:none;width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:var(--mm-chip-bg,rgba(var(--mm-accent-rgb,138,43,98),.1));color:var(--mm-accent,var(--brand));font-size:1.15rem}
  .mm-lp-b{flex:1 1 60%;min-width:0}
  .mm-lp-tittel{margin:0 0 .25rem;font-size:1.08rem;font-weight:700}
  .mm-lp-tittel a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
  .mm-lp-tittel a:hover{text-decoration:underline;text-underline-offset:3px}
  .mm-lp-pil{display:inline-flex;transition:transform .18s ease}.mm-lp-pil svg{width:1em;height:1em}
  .mm-lp-tittel a:hover .mm-lp-pil{transform:translateX(3px)}
  .mm-lp-t{font-size:.95rem;line-height:1.55}.mm-lp-t p{margin:.2rem 0}
  .mm-lp-merke{flex:none;align-self:flex-start;margin:.2rem 0 0 auto;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-family:var(--mm-font-utility,inherit);padding:.32rem .62rem;border-radius:999px;border:1px solid rgba(var(--mm-accent-rgb,138,43,98),.38);color:var(--mm-accent,var(--brand));white-space:nowrap}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-linjer .mm-lp{border-color:rgba(255,255,255,.24)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp :is(.mm-lp-tittel,.mm-lp-tittel a,.mm-lp-t){color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-nr{color:rgba(255,255,255,.82)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-ikon{background:rgba(255,255,255,.12);color:#fff}
  .mm-lp-ikonbilde{flex:none;display:inline-flex;align-items:center;justify-content:center}
  .mm-lp-ikonbilde img{display:block;width:100%;height:auto}
  /* aksent, knapp, hel rad og pris i egen kolonne (medmalin-as G1, G2, G4 – 30.9.2026) */
  .mm-lp-aksent{border-left:4px solid var(--mm-lp-aksent);padding-left:1.1rem;transition:border-left-width .18s ease,padding-left .18s ease}
  .mm-lp-aksent.mm-lp-lenket:hover{border-left-width:6px;padding-left:calc(1.1rem - 2px)}
  .mm-lp-knapp{margin-top:.8rem;position:relative;z-index:1}
  .mm-lp-helrad .mm-lp-lenket{position:relative}
  .mm-lp-helrad .mm-lp-lenket .mm-lp-tittel a::after{content:"";position:absolute;inset:0}
  .mm-lp-helrad .mm-lp-lenket :is(.mm-lp-t a,.mm-lp-felt a){position:relative;z-index:1}
  .mm-lp-pris{flex:0 1 15rem;align-self:flex-start;display:grid;gap:.15rem;text-align:right;line-height:1.4}
  .mm-lp-pris strong{font-size:1rem;font-weight:700}
  .mm-lp-pris span{font-size:.84rem;color:color-mix(in srgb,currentColor 68%,transparent)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-pris{color:#fff}
  @media(max-width:720px){
    .mm-lp:has(>.mm-lp-pris){flex-wrap:wrap}
    .mm-lp-pris{flex:1 1 100%;text-align:left;order:3}
    .mm-lp-aksent{border-left:0;padding-left:0;border-top:4px solid var(--mm-lp-aksent)!important}
    .mm-lp-aksent.mm-lp-lenket:hover{padding-left:0}
    .mm-lp-knapp{display:flex;justify-content:center;min-height:48px;align-items:center}
  }
  @media(prefers-reduced-motion:reduce){.mm-lp-aksent{transition:none}}
  /* felter[]: mikro-etikett i utility-fonten + verdi, hårstrek mellom linjene (#245) */
  .mm-lp-felter{margin:.7rem 0 0;padding:0;display:grid;gap:0}
  .mm-lp-felt{display:grid;grid-template-columns:minmax(6.5rem,auto) 1fr;gap:.35rem 1rem;padding:.5rem 0;border-top:1px solid rgba(127,127,127,.26)}
  .mm-lp-felt:first-child{border-top:0;padding-top:.15rem}
  .mm-lp-felt dt{margin:0;font-family:var(--mm-font-utility,inherit);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.5;padding-top:.12rem;color:color-mix(in srgb,currentColor 62%,transparent)}
  .mm-lp-felt dd{margin:0;font-size:.93rem;line-height:1.5;overflow-wrap:anywhere}
  .mm-lp-felt dd a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;border-bottom:1px solid color-mix(in srgb,currentColor 40%,transparent)}
  .mm-lp-felt dd a:hover{border-bottom-color:currentColor}
  .mm-lp-felt dd a .mm-lp-pil svg{width:.85em;height:.85em}
  .mm-lp-felt dd a:hover .mm-lp-pil{transform:translateX(3px)}
  /* fargeprøve foran tittel/celle (#247) — dekor; ordet ved siden av bærer betydningen */
  .mm-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.55rem;vertical-align:baseline;flex:none;box-shadow:0 0 0 1px rgba(127,127,127,.3)}
  .mm-lp-tittel .mm-swatch{margin-right:.5rem}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-merke{border-color:rgba(255,255,255,.42);color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-felt{border-color:rgba(255,255,255,.24)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-felt :is(dt,dd,dd a){color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-lp-felt dt{color:rgba(255,255,255,.72)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-swatch{box-shadow:0 0 0 1px rgba(255,255,255,.35)}
  @media(max-width:560px){.mm-lp-felt{grid-template-columns:1fr;gap:.1rem}}
  @media(max-width:560px){.mm-lp{flex-wrap:wrap;gap:.8rem}.mm-lp-merke{order:-1;margin-left:0;width:auto}.mm-lp-b{flex-basis:100%}.mm-lp-nummerert .mm-lp-b,.mm-lp-ikon+.mm-lp-b{flex-basis:calc(100% - 3.2rem)}}
  /* tabell */
  .mm-tabell-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
  .mm-tabell{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.45;text-align:left}
  .mm-tabell caption{caption-side:top;text-align:left;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-family:var(--mm-font-utility,inherit);color:color-mix(in srgb,currentColor 72%,transparent);padding:0 0 .6rem}
  .mm-tabell th,.mm-tabell td{padding:.8rem .9rem;border-bottom:1px solid rgba(127,127,127,.26);vertical-align:top}
  .mm-tabell th:first-child,.mm-tabell td:first-child{padding-left:0}
  .mm-tabell th:last-child,.mm-tabell td:last-child{padding-right:0}
  .mm-tabell thead th{font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-family:var(--mm-font-utility,inherit);border-bottom:2px solid color-mix(in srgb,currentColor 85%,transparent);white-space:nowrap}
  .mm-tabell tbody th{font-weight:700;color:var(--hcol)}
  .mm-tabell td p,.mm-tabell th p{margin:0}
  .mm-tabell :is(th,td) .mm-swatch{margin-right:.5rem}
  .mm-tabell-stripet tbody tr:nth-child(even){background:rgba(127,127,127,.08)}
  .mm-tabell-kompakt th,.mm-tabell-kompakt td{padding:.45rem .6rem;font-size:.9rem}
  :is(section.band.ondark,.col.colbg.ondark) .mm-tabell{color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-tabell :is(th,td){border-color:rgba(255,255,255,.24)}
  :is(section.band.ondark,.col.colbg.ondark) .mm-tabell tbody th{color:#fff}
  :is(section.band.ondark,.col.colbg.ondark) .mm-tabell-stripet tbody tr:nth-child(even){background:rgba(255,255,255,.06)}
  /* bildepeker (#351): forklaringer i margen med linje til nummererte punkter i bildet; liste under bildet på mobil */
  .mm-bildepeker{margin:0}
  .mm-bp-ramme{position:relative;display:grid;grid-template-columns:minmax(12rem,1fr) minmax(0,2.4fr);gap:1.6rem 2.4rem;align-items:center}
  .mm-bp-hoyre .mm-bp-ramme{grid-template-columns:minmax(0,2.4fr) minmax(12rem,1fr)}
  .mm-bp-hoyre .mm-bp-tekster{order:2}.mm-bp-hoyre .mm-bp-tekst{flex-direction:row-reverse;text-align:right}
  .mm-bp-tekster{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;justify-content:space-around;gap:1.4rem;min-height:100%}
  .mm-bp-utility .mm-bp-tekster{font-family:var(--mm-font-utility,inherit)}
  .mm-bp-tekst{display:flex;gap:.7rem;align-items:flex-start;font-size:.95rem;line-height:1.5}
  .mm-bp-tekst strong{display:block;font-weight:700}
  .mm-bp-nr,.mm-bp-punkt i{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;flex:none;font-size:.72rem;font-weight:700;font-style:normal;font-family:var(--mm-font-utility,inherit);background:var(--mm-accent,var(--brand));color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.9)}
  .mm-bp-bilde{position:relative;max-width:var(--bp-bredde,100%);margin:0 auto}
  .mm-bp-bilde img{display:block;width:100%;height:auto;border-radius:var(--bp-radius,0)}
  .mm-bp-punkt{position:absolute;transform:translate(-50%,-50%);z-index:2}
  .mm-bp-punkt i{width:1.6rem;height:1.6rem;box-shadow:0 0 0 3px rgba(255,255,255,.95),0 2px 10px rgba(0,0,0,.35)}
  .mm-bp-linjer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:currentColor;stroke:currentColor;stroke-width:1.5;opacity:.75}
  :is(section.band.ondark,.col.colbg.ondark) .mm-bildepeker{color:#fff}   /* linjene og tekstene følger den lyse teksten på mørke bånd */
  @media(max-width:820px){
    .mm-bp-ramme,.mm-bp-hoyre .mm-bp-ramme{grid-template-columns:1fr}
    .mm-bp-tekster,.mm-bp-hoyre .mm-bp-tekster{order:2;gap:.9rem;min-height:0}.mm-bp-hoyre .mm-bp-tekst{flex-direction:row;text-align:left}
    .mm-bp-linjer{display:none}
  }
  @media(prefers-reduced-motion:no-preference){.mm-bp-linjer line{transition:x1 .2s,x2 .2s}}
