/*
Theme Name: Juridiska Mallar 2026
Theme URI: https://www.juridiskamallar.se/
Author: Consilex AB
Description: Eget tema for juridiskamallar.se i riktningen "Marknadsplats". Byggt utan sidbyggare, med WooCommerce-stod for butik och produktsida. Sajtens orange (#FF9800) anvands som enda accentfarg.
Version: 0.9.2
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: jm2026
Tags: e-commerce, custom-menu, translation-ready
*/

/* ---------- Grund ---------- */
:root{
  --paper:#FFFFFF; --ink:#1A1A18; --tile:#F1EFEC; --tile2:#EAE7E2;
  --line:#E5E1DB; --mute:#8B857D; --dark:#26241F;
  --o:#FF9800;      /* sajtens orange - fyllnad, alltid med mörk text */
  --o-deep:#B25412; /* orange text pa ljus botten, klarar kontrastkrav */
  --o-tint:#FFF4E5;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
p{margin:0}
:focus-visible{outline:2px solid var(--o-deep);outline-offset:2px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:99;background:#fff;padding:10px 16px;width:auto;height:auto;clip:auto}
a{color:inherit;text-decoration:none}
.m-in{max-width:1140px;margin:0 auto;padding:0 40px}
h1,h2,h3,h4,h5{margin:0;font-weight:400}

/* Toppbar */
.m-util{
  background:var(--dark); color:#CFC9C0; font-size:11.5px; letter-spacing:.04em;
}
.m-util .m-in{display:flex;justify-content:space-between;align-items:center;gap:24px;height:34px}
.m-util b{color:#fff;font-weight:400}
.m-util .u-hi{color:var(--o)}

/* Header */
.m-head{border-bottom:1px solid var(--line); background:var(--paper)}
.m-head .m-in{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  gap:24px; height:74px;
}
.m-nav{display:flex;gap:26px;font-size:13px;letter-spacing:.01em}
.m-nav a{color:var(--ink);padding-bottom:2px;border-bottom:1px solid transparent}
.m-nav a:hover{border-color:var(--o-deep)}
.m-nav a.on{border-color:var(--ink)}
.m-mark{
  font-size:19px; letter-spacing:.28em; font-weight:400; text-transform:uppercase;
  white-space:nowrap; text-indent:.28em;
}
.m-tools{display:flex;justify-content:flex-end;align-items:center;gap:16px}
.m-search{
  display:flex; align-items:center; gap:8px; border:1px solid var(--line);
  padding:7px 12px; width:214px; color:var(--mute); font-size:12.5px;
}
.m-cart{position:relative;font-size:12.5px;letter-spacing:.04em}
.m-cart .n{
  display:inline-block; min-width:17px; height:17px; line-height:17px;
  background:var(--o); color:var(--ink); font-size:10.5px; text-align:center;
  margin-left:5px; padding:0 4px;
}
.ic{width:15px;height:15px;display:inline-block;vertical-align:-2px;stroke:currentColor;fill:none;stroke-width:1.4}

/* Hero */
.m-hero{background:var(--dark); color:#F2EEE8; overflow:visible}
/* Heron far INTE klippa: sokforslagen hanger ut under sokfaltet och ska ligga
   ovanpa nasta sektion. Klippningen flyttad till dokumentstapeln, som bara
   behover halla sig i sidled. overflow-x:clip skapar ingen scrollcontainer,
   sa den kan kombineras med overflow-y:visible. */
.m-hero .m-in{
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:48px; align-items:center; padding-top:56px; padding-bottom:56px;
}
.m-hero h1{
  font-family:"Source Serif 4",Georgia,serif; font-weight:400;
  font-size:42px; line-height:1.1; letter-spacing:-.015em; margin-bottom:11px;
  text-wrap:balance;
}
.m-hero p.lead{color:#BCB5AA;font-size:15px;line-height:1.7;max-width:58ch}
.m-cta{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}

/* Sokfaltet i heron - sajtens huvudsakliga ingang */
.hero-search{margin-top:28px;max-width:520px}
.hero-search .m-search{
  display:flex;align-items:center;gap:10px;width:100%;
  background:var(--paper);border:1px solid var(--paper);padding:0 0 0 16px;
}
.hero-search .m-search:focus-within{box-shadow:0 0 0 3px rgba(255,152,0,.45)}
.hero-search .m-search .ic{color:var(--mute);flex:none}
.hero-search .m-search input[type=search]{
  flex:1;min-width:0;border:0;background:none;outline:none;
  font-family:inherit;font-size:15px;color:var(--ink);padding:16px 0;width:auto;
}
.hero-search .m-search input[type=search]::placeholder{color:var(--mute)}
.hero-search .m-search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
.m-search-btn{
  flex:none;border:0;cursor:pointer;font-family:inherit;font-weight:500;
  background:var(--o);color:var(--ink);font-size:13px;letter-spacing:.06em;
  text-transform:uppercase;padding:16px 26px;align-self:stretch;
}
.m-search-btn:hover{background:#E88A00}
.hero-search .m-suggest{left:0;right:auto;width:100%;max-width:none;text-align:left}
.herohint{margin-top:14px;font-size:12.5px;color:#BCB5AA}
.herohint a{color:#F2EEE8;border-bottom:1px solid #5A554C}
.herohint a:hover{border-color:#F2EEE8}
.btn{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:.06em;
  text-transform:uppercase;padding:13px 24px;border:1px solid transparent;cursor:pointer;
  font-family:inherit;
}
.btn-o{background:var(--o);color:var(--ink);font-weight:500}
.btn-o:hover{background:#E88A00}
.btn-ghost{border-color:#5A554C;color:#F2EEE8}
.btn-ghost:hover{border-color:#F2EEE8}
.m-trust{
  margin-top:28px;padding-top:18px;border-top:1px solid #3A3730;
  display:flex;gap:26px;flex-wrap:wrap;font-size:12px;color:#BCB5AA;letter-spacing:.03em;
}
.m-trust b{color:#fff;font-weight:500}
.stars{color:var(--o-deep);letter-spacing:.08em}

/* Dokumentmotiv i CSS (inga foton).
   Dokumentet ar A4 (1:1,414) och allt matt inuti anges i cqw, dvs procent av
   dokumentets egen bredd. Darfor racker EN uppsattning regler for kort,
   produktsida, miniatyr, guidebild, kassa och hero - kontextreglerna langre ned
   satter bara storlek och skugga. Innehallet byggs i PHP med en hojdbudget,
   se jm_doc_build() i functions.php. Andras ett matt har maste kostnaden i
   jm_doc_cost() andras med, annars slutar sidan fyllas exakt. */
.stack{position:relative;height:290px;overflow-x:clip;overflow-y:visible}
.doc{
  container-type:inline-size;
  position:relative;background:#fff;display:flex;flex-direction:column;
  box-shadow:0 2px 10px rgba(26,26,24,.10);
  --dl:#E5E1DB;  /* textrad */
  --dh:#1A1A18;  /* rubrikband */
  --dm:#55504A;  /* paragrafrubrik */
  --ds:#C9C3BA;  /* underskriftslinje */
}
/* overflow:hidden ar skyddsklipp om en kostnadsuppskattning nagon gang slar over */
.doc .inner{padding:9.5cqw 9cqw;display:flex;flex-direction:column;height:100%;overflow:hidden}
.doc .r{height:.9cqw;background:var(--o);width:16cqw;margin-bottom:3.4cqw;flex:none}
.doc .h{height:3.2cqw;background:var(--dh);width:54cqw;flex:none}
.doc .h.sm{height:2.4cqw}
.doc .sub{height:1.4cqw;background:#BDB7AE;width:30cqw;margin-top:2.2cqw;flex:none}
.doc .hd{height:1.7cqw;background:var(--dm);width:26cqw;flex:none}
.doc .l{height:1.25cqw;background:var(--dl);width:100%;flex:none}
.doc .l.dt{background:#DCD6CE;width:30cqw}
.doc .para{display:flex;flex-direction:column;gap:1.6cqw}
.doc .blk{display:flex;flex-direction:column}
.doc .sp{flex:none}
.doc .push{margin-top:auto}
.doc .sig{height:.7cqw;background:var(--ds);flex:none}
.doc .sigrow{display:flex;gap:6cqw}
.doc .sigrow.one{max-width:52cqw}
.doc .sigrow .col{flex:1;display:flex;flex-direction:column;gap:1.4cqw}
.doc .sigcap{height:.9cqw;background:#E9E5DF}
.doc .trow{display:flex;gap:3cqw;align-items:center;padding:1.15cqw 0;border-bottom:.25cqw solid #EFECE7}
.doc .trow.hdr{border-bottom:.5cqw solid #BDB7AE}
.doc .trow.sum{border-bottom:0;border-top:.5cqw solid #BDB7AE;margin-top:.8cqw}
.doc .tc{height:1.1cqw;background:var(--dl)}
.doc .trow.hdr .tc{background:#9C968D}
.doc .trow.sum .tc{background:var(--dm)}
.doc .fld{display:flex;flex-direction:column;gap:.9cqw}
.doc .flab{height:1cqw;background:#A9A399;width:20cqw}
.doc .fbox{height:4.2cqw;border:.35cqw solid var(--dl);background:#FCFBFA}
.doc .chk{display:flex;gap:2.2cqw;align-items:center}
.doc .chkbox{width:2.6cqw;height:2.6cqw;border:.35cqw solid #BDB7AE;flex:none}
.doc .addr{display:flex;flex-direction:column;gap:1.3cqw;align-items:flex-end}
.doc .addr .l{background:#D8D2CA}
.doc .pgno{position:absolute;left:50%;transform:translateX(-50%);bottom:4cqw;
  width:3.5cqw;height:.8cqw;background:#EFECE7}
.doc.center .h,.doc.center .sub,.doc.center .r{margin-left:auto;margin-right:auto}

/* Siluett ur mallens forstasida - produktmeta _jm_silhouette, se jm_doc_silhouette() */
/* justify-content:space-between later mellanrummen absorbera resten, sa siluetten
   fyller sidan oavsett hur manga band skriptet matar ut (rakna med 45-55) */
.doc .silh{display:flex;flex-direction:column;justify-content:space-between;height:100%}
.doc .silh i{display:block;height:1.15cqw;background:var(--dl);flex:none}
.doc .silh i.k{background:var(--dh)}
.doc .silh i.d{background:var(--dm)}
.doc .silh i.e{background:transparent}

/* Hero: tre ark i solfjader */
.stack .doc{position:absolute;box-shadow:0 8px 26px rgba(0,0,0,.28)}
.d1{width:168px;aspect-ratio:1 / 1.414;left:2%;top:26px;transform:rotate(-5deg)}
.d2{width:184px;aspect-ratio:1 / 1.414;left:32%;top:8px;z-index:2}
.d3{width:168px;aspect-ratio:1 / 1.414;left:64%;top:32px;transform:rotate(4.5deg)}

/* USP-rad */
.m-usp{border-bottom:1px solid var(--line)}
.m-usp .m-in{
  /* auto-fit: raden funkar med tva, tre eller fyra rutor */
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.usp{
  padding:20px 24px;font-size:12.5px;letter-spacing:.03em;color:var(--ink);
  border-left:1px solid var(--line);display:flex;align-items:center;gap:10px;
}
.usp:first-child{border-left:0;padding-left:0}
.usp svg{color:var(--o-deep);flex:none}

/* Butik */
.shop{padding:44px 0 8px}
.filterbar{
  display:flex;justify-content:space-between;align-items:center;
  gap:24px;padding-bottom:26px;flex-wrap:wrap;
}
.cats{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:13px}
.cats a{color:var(--ink)}
.cats a:hover{color:var(--o-deep)}
.cats a.on{color:var(--o-deep)}
.cats .sep{color:#CFC9C0}
.filterbtn{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink);letter-spacing:.04em}

.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 26px}
.card{position:relative}
.thumb{
  background:var(--tile);aspect-ratio:1/1;display:grid;place-items:center;
  position:relative;overflow:hidden;
}
.card:hover .thumb{background:var(--tile2)}
.thumb .doc{position:static;transform:none;height:78%;aspect-ratio:1 / 1.414}
.badge{
  position:absolute;top:10px;right:10px;background:var(--o);color:var(--ink);
  font-size:10px;letter-spacing:.09em;text-transform:uppercase;padding:4px 8px;z-index:3;
}
.badge.dark{background:var(--ink)}
.heart{position:absolute;right:0;top:0;color:var(--mute)}
.cardhead{display:flex;justify-content:space-between;gap:12px;margin-top:13px;align-items:flex-start}
.cname{font-size:13.5px;line-height:1.35;max-width:22ch}
.rate{
  display:flex;align-items:center;gap:6px;margin-top:5px;
  font-size:11.5px;color:var(--mute);font-variant-numeric:tabular-nums;
}
.rate .stars{font-size:11px}
.price{margin-top:6px;font-size:13.5px;font-variant-numeric:tabular-nums}
.price .was{color:var(--mute);text-decoration:line-through;margin-right:7px;font-size:12.5px}
.price .now{color:var(--o-deep)}
.fmt{display:flex;gap:5px;margin-top:9px}
.chip{
  font-size:9.5px;letter-spacing:.09em;color:#fff;font-weight:500;
  border:1px solid transparent;padding:3px 7px;text-transform:uppercase;
}
/* Formatmarkeringarna bar tidigare gra kontur pa vit botten (ca 3,5:1 - under
   kravet). Nu Words bla och Adobes dampade roda, bada med vit text och AA-marginal. */
.chip-word{background:#2B579A;border-color:#2B579A} /* 7,3:1 mot vitt */
.chip-pdf{background:#B30B00;border-color:#B30B00}  /* 7,4:1 mot vitt */
.results{
  text-align:center;font-size:12px;color:var(--mute);margin-top:44px;
  padding-bottom:20px;border-bottom:1px solid var(--line);letter-spacing:.03em;
}
.loadmore{
  text-align:center;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  padding:22px 0;border-bottom:1px solid var(--line);color:var(--ink);
}
.loadmore span{border-bottom:1px solid var(--o);padding-bottom:3px}

/* Justeringar produktkort */
.cardhead .ic{color:var(--mute);flex:none;margin-top:3px}
.card a{color:inherit;display:block}

/* Bästsäljarflikar */
.best{background:var(--tile);margin-top:56px;padding:46px 0 50px}
.secthead{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:24px}
.secttl{
  font-family:"Source Serif 4",Georgia,serif;font-size:24px;font-weight:400;letter-spacing:-.01em;
}
.tabs{display:flex;gap:22px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase}
.tab{background:none;border:0;padding:0 0 5px;font-family:inherit;font-size:inherit;
  letter-spacing:inherit;text-transform:inherit;color:var(--mute);cursor:pointer;border-bottom:1px solid transparent}
.tab[aria-selected="true"]{color:var(--o-deep);border-color:var(--o-deep)}
.rows{background:var(--paper);border:1px solid var(--line)}
.row{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto auto auto auto;align-items:center;
  gap:20px;padding:15px 22px;border-top:1px solid var(--line);
}
.row:first-child{border-top:0}
.row .rk{font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
.row .nm{font-size:13.5px}
.row .cg{font-size:11.5px;color:var(--mute);letter-spacing:.03em}
.row .pr{font-size:13.5px;font-variant-numeric:tabular-nums;min-width:74px;text-align:right}
.row .add{
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);
  padding:8px 14px;color:var(--ink);white-space:nowrap;
}
.row:hover .add{border-color:var(--o-deep);color:var(--o-deep)}
.row .rate{margin:0}

/* Omdömen */
.reviews{padding:60px 0}
.revtop{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:30px}
.revscore{font-size:34px;font-family:"Source Serif 4",Georgia,serif;line-height:1;font-variant-numeric:tabular-nums}
.revmeta{font-size:12.5px;color:var(--mute);letter-spacing:.03em}
.revgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.rev{border-top:2px solid var(--o);padding-top:18px}
.rev q{
  display:block;font-family:"Source Serif 4",Georgia,serif;font-size:16px;line-height:1.5;
  quotes:"\201D" "\201D";
}
.rev q::before{content:open-quote;color:var(--o-deep);margin-right:2px}
.rev q::after{content:none}
.revwho{margin-top:14px;font-size:11.5px;color:var(--mute);letter-spacing:.04em}

/* Avsändare */
.author{background:var(--dark);color:#EDE8E1;padding:52px 0}
.author .m-in{display:grid;grid-template-columns:132px 1fr;gap:34px;align-items:center}
.mono{
  width:132px;height:132px;background:#33302A;display:grid;place-items:center;
  font-family:"Source Serif 4",Georgia,serif;font-size:38px;color:var(--o);letter-spacing:.02em;
}
.author h2{font-family:"Source Serif 4",Georgia,serif;font-size:24px;font-weight:400;margin-bottom:7px}
.author p{color:#BCB5AA;max-width:62ch;font-size:14px}

/* Guider */
.guides{padding:60px 0}
.gg{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 26px}
.g img,.gimg{display:block;background:var(--tile);width:100%}
.gimg{display:grid;place-items:center;overflow:hidden}
.gimg.tall{aspect-ratio:3/4}
.gimg.wide{aspect-ratio:4/3}
.gimg .doc{position:static;transform:none;height:78%;aspect-ratio:1 / 1.414}
.gdate{margin-top:16px;font-size:11.5px;color:var(--mute);letter-spacing:.05em;display:flex;align-items:center;gap:9px}
.gdate::before{content:"";width:16px;height:1px;background:var(--mute)}
.gttl{font-family:"Source Serif 4",Georgia,serif;font-size:19px;font-weight:400;margin-top:7px;line-height:1.28}
.gtxt{margin-top:8px;font-size:13px;color:#5F5A53;max-width:38ch}
.gmore{margin-top:11px;font-size:12px;color:var(--o-deep);letter-spacing:.04em;display:inline-block}
.gmore:hover{text-decoration:underline}

/* Sidfot */
.foot{border-top:1px solid var(--line);padding:52px 0 0}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px}
.fh{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:10px}
.flist{display:flex;flex-direction:column;gap:9px;font-size:13px}
.flist a:hover{color:var(--o-deep)}
.fmark{font-size:15px;letter-spacing:.26em;text-transform:uppercase;margin-bottom:14px}
.fabout{font-size:12.5px;color:#5F5A53;line-height:1.75}
.fnote{color:var(--o-deep);font-size:11.5px;letter-spacing:.03em;margin-top:8px;display:block}
.fbot{
  margin-top:44px;border-top:1px solid var(--line);padding:18px 0 34px;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  font-size:11.5px;color:var(--mute);letter-spacing:.04em;
}



/* ================= PRODUKTSIDA ================= */
.crumbs{padding:18px 0;font-size:12px;color:var(--mute);letter-spacing:.03em;border-bottom:1px solid var(--line)}
.crumbs a{color:var(--mute)}
.crumbs a:hover{color:var(--o-deep)}
.crumbs .cur{color:var(--ink)}

.pdp{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:56px;padding:38px 0 54px;align-items:start}

.pv{background:var(--tile);aspect-ratio:4/5;display:grid;place-items:center;position:relative}
.pv .doc{position:static;transform:none;height:84%;aspect-ratio:1 / 1.414;box-shadow:0 6px 22px rgba(26,26,24,.13)}
.pvzoom{position:absolute;right:14px;bottom:14px;background:var(--paper);border:1px solid var(--line);
  font-size:11px;letter-spacing:.07em;text-transform:uppercase;padding:8px 13px;color:var(--ink)}
.pthumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.pth{background:var(--tile);aspect-ratio:3/4;display:grid;place-items:center;border:1px solid transparent}
.pth.on{border-color:var(--ink)}
/* Sma rutor: samma regler, men morkare grator sa raderna inte forsvinner */
.pth .doc{position:static;transform:none;height:80%;aspect-ratio:1 / 1.414;box-shadow:none;--dl:#DAD4CC}
.pth.pdf{display:grid;place-items:center;font-size:10px;letter-spacing:.1em;color:var(--mute)}

.buy h1{font-family:"Source Serif 4",Georgia,serif;font-weight:400;font-size:32px;line-height:1.15;letter-spacing:-.015em}
.buyrate{display:flex;align-items:center;gap:9px;margin-top:11px;font-size:12.5px;color:var(--mute)}
.buyrate a{color:var(--mute);border-bottom:1px solid var(--line)}
.buyrate a:hover{color:var(--o-deep);border-color:var(--o-deep)}
.buylead{margin-top:16px;font-size:14px;line-height:1.65;color:#4E4A44;max-width:46ch}
.buylead p{margin:0 0 10px}
.buylead p:last-child{margin-bottom:0}
.buylead ul,.buylead ol{margin:0 0 10px 18px}
.buylead li{margin:3px 0}
.buylead strong,.buylead b{color:var(--ink);font-weight:500}
.pricerow{display:flex;align-items:baseline;gap:12px;margin-top:22px}
.pricebig{font-size:28px;font-variant-numeric:tabular-nums}
.pricevat{font-size:12px;color:var(--mute);letter-spacing:.03em}
.incl{margin-top:20px;display:flex;flex-direction:column;gap:9px;font-size:13.5px}
.incl div{display:flex;gap:10px;align-items:flex-start}
.incl svg{color:var(--o-deep);flex:none;margin-top:3px}
.buybtns{margin-top:24px;display:flex;flex-direction:column;gap:10px}
.btn-buy{background:var(--o);color:var(--ink);font-weight:500;justify-content:center;width:100%;padding:16px 22px;font-size:13px}
.btn-buy:hover{background:#E88A00}
.btn-line{border:1px solid var(--line);color:var(--ink);justify-content:center;width:100%;padding:14px 22px;background:none}
.btn-line:hover{border-color:var(--ink)}
.legal{margin-top:18px;font-size:11.5px;line-height:1.65;color:var(--mute);border-left:2px solid var(--o);padding-left:12px}
.legal a{color:var(--o-deep);border-bottom:1px solid rgba(178,84,18,.35)}
.buyfoot{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  font-size:11.5px;color:var(--mute);letter-spacing:.03em}

/* Innehållsdel */
.pcontent{border-top:1px solid var(--line);padding:48px 0 8px}
.pcols{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:56px;align-items:start}
.anchors{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  padding-bottom:22px;margin-bottom:30px;border-bottom:1px solid var(--line)}
.anchors a{color:var(--mute);padding-bottom:4px;border-bottom:1px solid transparent}
.anchors a:first-child{color:var(--o-deep);border-color:var(--o-deep)}
.anchors a:hover{color:var(--o-deep)}
.psec+.psec{margin-top:40px}
.psec h2{font-family:"Source Serif 4",Georgia,serif;font-size:22px;font-weight:400;margin-bottom:8px}
.psec p{font-size:14.5px;color:#4E4A44;max-width:64ch}
.psec p+p{margin-top:11px}
.steps{margin-top:16px;display:flex;flex-direction:column;gap:0;counter-reset:s}
.step{display:grid;grid-template-columns:34px 1fr;gap:16px;padding:15px 0;border-top:1px solid var(--line)}
.step:last-child{border-bottom:1px solid var(--line)}
.stepn{font-size:12px;color:var(--o-deep);font-variant-numeric:tabular-nums;letter-spacing:.06em;padding-top:2px}
.step b{font-weight:500;font-size:14px;display:block;margin-bottom:3px}
.step span.t{font-size:13.5px;color:#5F5A53}
details.faq{border-top:1px solid var(--line)}
details.faq:last-of-type{border-bottom:1px solid var(--line)}
details.faq summary{list-style:none;cursor:pointer;padding:16px 30px 16px 0;font-size:14.5px;position:relative}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";position:absolute;right:4px;top:14px;color:var(--o-deep);font-size:17px;line-height:1}
details.faq[open] summary::after{content:"–"}
details.faq p{padding:0 40px 18px 0;font-size:14px}

.side{position:sticky;top:20px;display:flex;flex-direction:column;gap:20px}
.facts{border:1px solid var(--line);padding:22px}
.facts h3{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute);margin-bottom:10px;font-weight:500}
.facts dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 16px;font-size:13px}
.facts dt{color:var(--mute)}
.facts dd{margin:0;text-align:right}
.fit{border:1px solid var(--line);padding:22px}
.fit h3{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute);margin-bottom:10px;font-weight:500}
.fit ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px}
.fit li{display:flex;gap:9px;align-items:flex-start}
.fit li svg{flex:none;margin-top:3px}
.fit .yes svg{color:var(--o-deep)}
.fit .no{color:var(--mute)}
.fit .no svg{color:#C4BEB5}
.fit .div{height:1px;background:var(--line);margin:14px 0}

/* Omdömen på produkt */
.pre{background:var(--tile);padding:50px 0;margin-top:52px}
.pregrid{display:grid;grid-template-columns:270px 1fr;gap:48px;align-items:start}
.bars{display:flex;flex-direction:column;gap:7px;margin-top:18px}
.bar{display:grid;grid-template-columns:34px 1fr 38px;gap:10px;align-items:center;font-size:11.5px;color:var(--mute);font-variant-numeric:tabular-nums}
.bar i{height:5px;background:#DDD8D1;display:block}
.bar i b{display:block;height:100%;background:var(--o)}
.prelist{display:flex;flex-direction:column;gap:0}
.prev{border-top:1px solid #DDD8D1;padding:20px 0}
.prev:first-child{border-top:0;padding-top:0}
.prevhead{display:flex;align-items:center;gap:12px;font-size:11.5px;color:var(--mute);letter-spacing:.03em}
.prevhead .stars{font-size:11px}
.prev p{margin-top:9px;font-size:14px;max-width:62ch;color:#3E3A35}
.verified{display:inline-flex;align-items:center;gap:5px;color:var(--o-deep)}

/* Merförsäljning */
.bundle{border:1px solid var(--o);background:var(--o-tint);padding:24px 26px;margin-top:52px;
  display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}
.bundle h3{font-family:"Source Serif 4",Georgia,serif;font-size:19px;font-weight:400;margin-bottom:5px}
.bundle p{font-size:13.5px;color:#5F5A53;max-width:56ch}
.bundle .bprice{font-size:13.5px;white-space:nowrap;font-variant-numeric:tabular-nums}
.bundle .bprice s{color:var(--mute);margin-right:8px}
.cross{padding:52px 0 0}
@media (max-width:1080px){
  .pdp,.pcols,.pregrid{grid-template-columns:1fr;gap:34px}
  .side{position:static}
}
/* ---------- Temaspecifikt: WordPress och WooCommerce ---------- */
.jm-page{padding:52px 0 64px}
.jm-page .m-in{max-width:820px}
.entry-title{font-family:"Source Serif 4",Georgia,serif;font-size:34px;line-height:1.15;letter-spacing:-.015em;margin-bottom:8px;text-wrap:balance}
.entry-meta{font-size:11.5px;color:var(--mute);letter-spacing:.05em;text-transform:uppercase;margin-bottom:26px}
.entry-content{font-size:15.5px;line-height:1.75;color:#3E3A35}
.entry-content > *+*{margin-top:1.05em}
.entry-content h2{font-family:"Source Serif 4",Georgia,serif;font-size:24px;line-height:1.25;margin-top:1.9em}
.entry-content h3{font-family:"Source Serif 4",Georgia,serif;font-size:19px;line-height:1.3;margin-top:1.6em}
/* Rubriken ska sitta nara sin egen text - luften hor hemma ovanfor rubriken */
.entry-content h2+*,.entry-content h3+*,.entry-content h4+*{margin-top:.4em}
.entry-content a{color:var(--o-deep);border-bottom:1px solid rgba(178,84,18,.35)}
.entry-content ul,.entry-content ol{padding-left:1.2em}
.entry-content li+li{margin-top:.4em}
.entry-content blockquote{border-left:2px solid var(--o);padding-left:18px;font-family:"Source Serif 4",Georgia,serif;font-size:18px;color:var(--ink)}
.entry-content img{display:block}
.entry-content table{width:100%;border-collapse:collapse}
.entry-content th,.entry-content td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left}
.entry-content figure{margin:0}
.jm-archive{padding:44px 0 8px}
.jm-pagination{display:flex;gap:10px;justify-content:center;padding:34px 0;font-size:13px}
.jm-pagination .page-numbers{padding:8px 13px;border:1px solid var(--line)}
.jm-pagination .current{border-color:var(--ink)}
.jm-note{border:1px solid var(--line);background:var(--tile);padding:22px 24px;font-size:13.5px;color:#5F5A53;max-width:64ch}
.jm-note b{color:var(--ink);font-weight:500;display:block;margin-bottom:5px}

/* Produktbilder: riktiga bilder i den ljusa rutan */
.thumb img,.pv img{width:100%;height:100%;object-fit:contain;padding:11%;mix-blend-mode:multiply}
.pv img{padding:8%}
.pth img{width:100%;height:100%;object-fit:contain;padding:10%}

/* WooCommerce */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  list-style:none;margin:0 0 24px;padding:14px 18px;border-left:2px solid var(--o);
  background:var(--o-tint);font-size:13.5px}
.woocommerce-error{border-color:#B3453C;background:#FBEEEC}
.jm-added{font-size:12px;color:var(--o-deep);margin-top:8px;display:none}
.buy form.cart{margin:26px 0 0}
.buy .quantity{display:none}
.buy .single_add_to_cart_button{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  background:var(--o);color:var(--ink);border:0;cursor:pointer;font-family:inherit;
  font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:16px 22px;font-weight:500}
.buy .single_add_to_cart_button:hover{background:#E88A00}
.buy .variations{width:100%;margin-bottom:16px;font-size:13px}
.buy .variations td{padding:6px 0}
.buy select{font-family:inherit;font-size:13px;padding:9px 10px;border:1px solid var(--line);background:#fff;width:100%}
.stars-empty{color:var(--mute);font-size:12px}
.woocommerce-Price-amount{white-space:nowrap}
.price del{color:var(--mute);font-size:.9em;margin-right:7px}
.price ins{text-decoration:none;color:var(--o-deep)}
.jm-sidebar-none{display:none}
.related.products,.up-sells{display:none}
.m-nav ul.m-navlist{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.m-nav ul.m-navlist a{color:var(--ink);padding-bottom:2px;border-bottom:1px solid transparent}
.m-nav ul.m-navlist a:hover{border-color:var(--o-deep)}
.m-nav ul.m-navlist .current-menu-item > a,.m-nav ul.m-navlist .current_page_item > a{border-color:var(--ink)}
.m-search input[type=search]{border:0;background:none;font-family:inherit;font-size:12.5px;color:var(--ink);width:100%;padding:0;outline:none}
.m-search input::placeholder{color:var(--mute)}
.m-mark a{color:inherit}
.m-mark img{max-height:34px;width:auto}
.gimg img{width:100%;height:100%;object-fit:cover;display:block}
.gttl a{color:inherit}
.gttl a:hover{color:var(--o-deep)}
.row .nm:hover{color:var(--o-deep)}
.cname{transition:color .12s ease}
.card:hover .cname{color:var(--o-deep)}
.loadmore a{display:block;color:inherit}
.filterbar .woocommerce-ordering select{font-family:inherit;font-size:12.5px;padding:7px 10px;border:1px solid var(--line);background:#fff}
.pricebig .woocommerce-Price-amount{font-size:28px}
.buy .price{font-size:28px}
@media (max-width:1080px){.pthumbs{grid-template-columns:repeat(4,1fr)}}

/* ---------- Rattningar efter forsta granskningen pa staging ---------- */
/* Varukorgen finns redan i sidhuvudet - plugin-varianten i menyn ar dubbel */
.m-nav .wpmenucartli,.m-nav .menu-item-type-wpmenucart,.m-nav a[href*="#wpmenucart"],.dr-nav .menu-item-type-wpmenucart{display:none}
/* Kopknappen ska bara sajtens orange, inte plugin-lila */
.woocommerce div.product form.cart .button,
.buy form.cart button.single_add_to_cart_button,
.buy .single_add_to_cart_button.button.alt{
  background:var(--o)!important;color:var(--ink)!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;text-shadow:none!important;width:100%;padding:16px 22px!important;
  font-family:inherit!important;font-size:13px!important;letter-spacing:.06em;text-transform:uppercase;font-weight:500!important}
.woocommerce div.product form.cart .button:hover,
.buy .single_add_to_cart_button.button.alt:hover{background:#E88A00!important}
.buy form.cart .quantity,.buy .quantity{display:none!important}
.buy .woocommerce-variation-price{display:none}
.buy table.variations{border:0}
.buy table.variations th{text-align:left;font-weight:400;font-size:12px;letter-spacing:.05em;color:var(--mute);padding-right:14px;width:38%}
.buy .reset_variations{font-size:11.5px;color:var(--mute)}
/* Kortnamn pa hogst tva rader sa rutnatet blir jamnt */
.cname{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.buylead{display:block}
.buylead-more{color:var(--o-deep);white-space:nowrap}
.buylead-more:hover{text-decoration:underline}
.thumb img,.pv img{mix-blend-mode:normal}

/* ================= KASSAN ================= */
/* Direct Checkout ager mallarna, sa layouten byggs pa Woo:s egen markup. */
.woocommerce-checkout .jm-page .m-in,
.woocommerce-order-received .jm-page .m-in{max-width:1140px}
.woocommerce-checkout .jm-page{padding-top:34px}
.woocommerce-checkout .woocommerce-cart-form{display:none}
.co-back{font-size:13px;color:var(--ink);border-bottom:1px solid transparent}
.co-back:hover{border-color:var(--o-deep);color:var(--o-deep)}

form.checkout.woocommerce-checkout{
  display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  column-gap:56px;row-gap:0;align-items:start;margin-top:26px}
form.checkout > .col2-set,form.checkout > #customer_details{grid-column:1;grid-row:1 / span 3}
form.checkout > .co-reassure{grid-column:1;grid-row:4;align-self:start}
form.checkout > #order_review_heading{grid-column:2;grid-row:1;margin:0}
form.checkout > .woocommerce-checkout-review-order{
  grid-column:2;grid-row:2 / span 3;position:sticky;top:20px;
  border:1px solid var(--line);padding:22px 24px 24px}
form.checkout > .woocommerce-NoticeGroup{grid-column:1 / -1;grid-row:1}
/* Woo:s woocommerce-layout.css flytar .col-1/.col-2 till 48% och vinner pa
   specificitet. Det lamnade en tom hogerhalva i vanstra kolumnen - det stora
   tomrummet mellan uppgifterna och ordersammanfattningen. */
.woocommerce-checkout form.checkout .col2-set .col-1,
.woocommerce-checkout form.checkout .col2-set .col-2{
  float:none;width:100%;max-width:none;padding:0}
.woocommerce-checkout form.checkout .col2-set::before,
.woocommerce-checkout form.checkout .col2-set::after{content:none}

/* Rubriker */
form.checkout h3,#order_review_heading{
  font-family:"Source Serif 4",Georgia,serif;font-size:19px;font-weight:400;
  margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.woocommerce-billing-fields h3{margin-top:0}
.woocommerce-additional-fields h3,#ship-to-different-address{margin-top:30px!important}

/* Falt */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:repeat(12,1fr);gap:17px 18px}
form.checkout .form-row{margin:0;padding:0;display:flex;flex-direction:column;gap:6px;min-width:0;width:auto!important;float:none!important}
form.checkout .form-row{grid-column:1 / -1}
form.checkout .form-row-first{grid-column:span 6}
form.checkout .form-row-last{grid-column:span 6}
/* Postnummer behover inte halva raden - ortnamnet gor det. */
form.checkout #billing_postcode_field,form.checkout #shipping_postcode_field{grid-column:span 4}
form.checkout #billing_city_field,form.checkout #shipping_city_field{grid-column:span 8}
form.checkout #billing_company_field{grid-column:span 7}
form.checkout #vat_number_field{grid-column:span 5}
/* Organisationsnumret pa egen rad, i samma bredd som foretagsrutan ovanfor */
form.checkout #billing_org_nr_field{grid-column:1 / span 7}
form.checkout #billing_company_field:last-child{grid-column:1 / -1}
form.checkout .form-row label{font-size:12px;letter-spacing:.04em;color:var(--mute)}
form.checkout .form-row label .required{color:var(--o-deep);text-decoration:none;border:0}
form.checkout .woocommerce-input-wrapper{display:block;width:100%}
form.checkout input.input-text,form.checkout textarea.input-text,form.checkout select{
  font-family:inherit;font-size:14px;padding:12px 13px;border:1px solid var(--line);
  background:#fff;color:var(--ink);width:100%;border-radius:0;box-shadow:none}
form.checkout input.input-text:focus,form.checkout textarea:focus,form.checkout select:focus{
  border-color:var(--ink);outline:none}
form.checkout .woocommerce-invalid input.input-text{border-color:#B3453C}
.select2-container--default .select2-selection--single{height:44px;border:1px solid var(--line);border-radius:0;background:#fff}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:42px;padding-left:13px;font-size:14px;color:var(--ink)}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:42px}

.co-reassure{margin-top:28px;display:flex;flex-direction:column;gap:11px;font-size:12.5px;color:#5F5A53}
.co-reassure div{display:flex;gap:10px;align-items:flex-start}
.co-reassure svg{color:var(--o-deep);flex:none;margin-top:3px}

/* Ordersammanfattning */
.woocommerce table.shop_table.woocommerce-checkout-review-order-table{width:100%;border:0;border-radius:0;margin:0;border-collapse:collapse}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table thead{display:none}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table td,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table th{border:0;padding:0;text-align:left;background:none}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tbody tr{border-bottom:1px solid var(--line)}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tbody td{padding:14px 0;vertical-align:middle}
td.product-name{display:flex;gap:13px;align-items:center;flex-wrap:wrap;font-size:13.5px}
.co-thumb{width:48px;height:60px;background:var(--tile);display:grid;place-items:center;overflow:hidden;flex:none}
.co-thumb .doc{position:static;transform:none;box-shadow:none;height:86%;aspect-ratio:1 / 1.414;--dl:#D5CFC7;--ds:#BDB7AE}
.co-thumb img{width:100%;height:100%;object-fit:contain;padding:8%}
.co-name{flex:1 1 120px;line-height:1.35;min-width:0}
.co-meta{flex-basis:100%;padding-left:61px;font-size:11.5px;color:var(--mute);margin-top:-6px}
.co-remove{color:var(--mute);border-bottom:1px solid var(--line)}
.co-remove:hover{color:var(--o-deep);border-color:var(--o-deep)}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table td.product-total{
  text-align:right;white-space:nowrap;font-size:13.5px;font-variant-numeric:tabular-nums;width:1%;padding-left:16px}
.woocommerce-checkout-review-order-table .variation{font-size:11.5px;color:var(--mute);margin:3px 0 0}
.woocommerce-checkout-review-order-table .variation dt,
.woocommerce-checkout-review-order-table .variation dd{display:inline;margin:0}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot th{
  color:var(--mute);font-weight:400;font-size:13.5px;padding:9px 0}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot td{
  text-align:right;font-size:13.5px;padding:9px 0;font-variant-numeric:tabular-nums}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot tr:first-child th,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot tr:first-child td{padding-top:16px}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total td{
  border-top:1px solid var(--line);padding-top:15px;font-size:16px}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total td{font-weight:500}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total .woocommerce-Price-amount{font-size:17px}
/* Totalsumman far aldrig brytas mitt i - hela raden pa en rad. */
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total td{white-space:nowrap;flex:none}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total .includes_tax{display:inline;font-size:11.5px;color:var(--mute);font-weight:400;white-space:nowrap;margin-left:4px}
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tfoot .order-total .includes_tax .woocommerce-Price-amount{font-size:11.5px;font-weight:400}

.co-delivery{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:13px 15px;
  background:var(--o-tint);font-size:12.5px;line-height:1.5}
.co-delivery svg{color:var(--o-deep);flex:none;margin-top:2px}

/* Betalning */
#payment{background:none;border-radius:0;margin-top:20px}
#payment ul.payment_methods{list-style:none;margin:0 0 16px;padding:0;border:1px solid var(--line)}
#payment ul.payment_methods li{padding:14px 16px;border-top:1px solid var(--line);background:none}
#payment ul.payment_methods li:first-child{border-top:0}
#payment ul.payment_methods li > label{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink)}
#payment ul.payment_methods li input[type=radio]{accent-color:var(--o-deep);width:16px;height:16px}
#payment div.payment_box{background:var(--tile);padding:12px 14px;font-size:12.5px;margin:11px 0 0;line-height:1.55;border-radius:0}
#payment div.payment_box::before{display:none}
#payment div.payment_box p{margin:0}
#payment .form-row.place-order{padding:0;margin:0}
.woocommerce-terms-and-conditions-wrapper{margin:4px 0 10px}
.form-row.jm-consent{margin:0 0 10px;padding:0}
.woocommerce-form__label-for-checkbox,.form-row.jm-consent label{
  display:flex!important;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.55;
  color:var(--ink);letter-spacing:0;text-transform:none}
.woocommerce-form__label-for-checkbox input[type=checkbox],
.form-row.jm-consent input[type=checkbox]{margin:2px 0 0;width:16px;height:16px;accent-color:var(--o-deep);flex:none}
.form-row.jm-consent abbr.required,.woocommerce-terms-and-conditions-checkbox-text .required{color:var(--o-deep);border:0;text-decoration:none}
#place_order{
  width:100%;background:var(--o)!important;color:var(--ink)!important;border:0!important;border-radius:0!important;
  padding:16px 22px!important;font-family:inherit!important;font-size:13px!important;letter-spacing:.06em;
  text-transform:uppercase;font-weight:500!important;cursor:pointer;margin-top:6px;text-shadow:none!important;
  box-shadow:none!important;float:none}
#place_order:hover{background:#E88A00!important}
.woocommerce-privacy-policy-text{font-size:11.5px;color:var(--mute);margin-top:12px;line-height:1.6}
.woocommerce-privacy-policy-text a{color:var(--o-deep)}
.blockUI.blockOverlay{background:#fff!important;opacity:.6!important}
.woocommerce-NoticeGroup ul{list-style:none;padding:0;margin:0}

/* Tack- och nedladdningssida */
.jm-thanks{max-width:760px}
.th-lead{font-size:15.5px;color:#4E4A44;margin-top:12px;max-width:60ch}
.th-files{margin-top:36px}
.th-list{border:1px solid var(--line)}
.th-file{display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:16px 18px;border-top:1px solid var(--line);flex-wrap:wrap}
.th-file:first-child{border-top:0}
.th-name{display:block;font-size:14px}
.th-sub{display:block;font-size:11.5px;color:var(--mute);margin-top:3px}
.th-meta{margin-top:36px;border-top:1px solid var(--line);padding-top:22px}
.th-meta dl{display:grid;grid-template-columns:auto 1fr;gap:9px 20px;font-size:13.5px;margin:0}
.th-meta dt{color:var(--mute)}
.th-meta dd{margin:0}
.th-fine{margin-top:20px;font-size:12px;color:var(--mute);line-height:1.6}
.th-fine a{color:var(--o-deep)}
.th-next{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}

@media (max-width:1080px){
  form.checkout.woocommerce-checkout{grid-template-columns:1fr;row-gap:34px}
  form.checkout > .col2-set,form.checkout > #customer_details,
  form.checkout > .co-reassure,form.checkout > #order_review_heading,
  form.checkout > .woocommerce-checkout-review-order{grid-column:1;grid-row:auto;position:static}
}
@media (max-width:760px){
  form.checkout .form-row,form.checkout .form-row-first,form.checkout .form-row-last,
  form.checkout #billing_postcode_field,form.checkout #shipping_postcode_field,
  form.checkout #billing_city_field,form.checkout #shipping_city_field,
  form.checkout #billing_company_field,form.checkout #vat_number_field,
  form.checkout #billing_org_nr_field{grid-column:1 / -1}
}
.woocommerce-checkout #payment{background:none;border-radius:0;padding:0}
.woocommerce-checkout #payment ul.payment_methods{background:none;border-bottom:1px solid var(--line)}
.woocommerce-checkout #payment div.form-row{padding:0;margin:0}
.woocommerce-checkout #payment div.payment_box{background:var(--tile);color:var(--ink)}
.woocommerce-checkout #payment div.payment_box::after{display:none}
.woocommerce-checkout #payment ul.payment_methods li img{max-height:22px;width:auto;margin-left:6px}

/* Sokforslag */
.m-search-wrap{position:relative}
.m-suggest{
  position:absolute;top:calc(100% + 6px);right:0;width:340px;max-width:80vw;z-index:200;
  background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 30px rgba(26,26,24,.10)}
.sg-item{display:flex;justify-content:space-between;gap:14px;align-items:baseline;
  padding:11px 14px;border-top:1px solid var(--line);font-size:13px;color:var(--ink)}
.sg-item:first-child{border-top:0}
.sg-item:hover,.sg-item.on{background:var(--tile)}
.sg-name{line-height:1.35}
.sg-price{color:var(--mute);font-variant-numeric:tabular-nums;white-space:nowrap}
.sg-all{display:block;padding:11px 14px;border-top:1px solid var(--line);
  font-size:12px;letter-spacing:.05em;color:var(--o-deep);background:var(--tile)}
.sg-all:hover{text-decoration:underline}
.sg-none{padding:14px;font-size:12.5px;color:var(--mute);margin:0}

/* ================= MOBIL ================= */
.m-burger{display:none;background:none;border:0;padding:6px 2px;cursor:pointer;color:var(--ink)}
.m-burger-bars{display:block;width:20px}
.m-burger-bars i{display:block;height:1.5px;background:currentColor;margin:4px 0;transition:transform .18s ease,opacity .18s ease}
.m-burger[aria-expanded="true"] .m-burger-bars i:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.m-burger[aria-expanded="true"] .m-burger-bars i:nth-child(2){opacity:0}
.m-burger[aria-expanded="true"] .m-burger-bars i:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.m-drawer{display:none;border-bottom:1px solid var(--line);background:var(--paper)}
.dr-nav{display:flex;flex-direction:column;max-width:1140px;margin:0 auto;padding:8px 24px 22px}
.dr-main{font-size:17px;padding:13px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.dr-h{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute);margin:22px 0 6px}
.dr-cat{font-size:14px;padding:9px 0;color:#4E4A44}
.dr-cat:active,.dr-main:active{color:var(--o-deep)}
body.jm-drawer-open{overflow:hidden}

@media (max-width:1080px){
  .m-burger{display:block}
  .m-drawer{display:block}
  .m-head .m-in{
    grid-template-columns:auto 1fr auto;align-items:center;
    row-gap:12px;padding-top:14px;padding-bottom:14px;height:auto}
  .m-nav{display:none}
  .m-mark{font-size:16px;letter-spacing:.2em;text-indent:.2em;text-align:center}
  .m-tools{gap:16px}
  /* Soket ar viktigare an menyn har - egen rad under sidhuvudet */
  .m-search-wrap{display:block;grid-column:1 / -1;order:5;width:100%}
  .m-search{display:flex;width:100%;padding:10px 12px}
  .m-suggest{left:0;right:0;width:auto;max-width:none}
  .m-util .m-in{height:auto;padding-top:7px;padding-bottom:7px;font-size:11px;
    flex-direction:column;align-items:flex-start;gap:2px}
  .m-hero .m-in{padding-top:40px;padding-bottom:40px}
  .crumbs{white-space:normal;line-height:1.7}
  .anchors{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .cats{gap:10px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .cats a{white-space:nowrap}
  .pv{aspect-ratio:1 / 1}
  .pv .doc{height:76%}
}

/* Heron staplas innan textkolumnen blir sa smal att sokfaltet klams ihop. */
@media (max-width:860px){
  .m-hero .m-in{grid-template-columns:1fr;gap:30px}
  .m-hero p.lead{max-width:none}
  .stack{height:230px}
}

@media (max-width:640px){
  .m-in{padding:0 18px}
  .stack{height:180px}
  /* Tva kolumner ar fortfarande lasbart och sparar mycket skrollande */
  .grid{grid-template-columns:repeat(2,1fr);gap:26px 14px}
  .cname{font-size:12.5px}
  .gg{grid-template-columns:1fr}
  .m-hero h1{font-size:28px;line-height:1.15}
  .m-hero .m-in{padding-top:32px;padding-bottom:32px}
  .m-cta{flex-direction:column;align-items:stretch}
  .hero-search{max-width:none}
  .hero-search .m-search{padding-left:12px}
  .hero-search .m-search input[type=search]{font-size:16px;padding:14px 0}
  .m-search-btn{padding:14px 18px;font-size:12px}
  .m-cta .btn{justify-content:center}
  .m-trust{gap:8px;flex-direction:column}
  .m-usp .m-in{grid-template-columns:1fr}
  .usp{border-left:0;padding:13px 0;border-top:1px solid var(--line)}
  .usp:first-child{border-top:0}
  .secthead{gap:10px}
  .secttl{font-size:21px}
  .buy h1{font-size:26px}
  .pricerow{margin-top:18px}
  .buybtns .btn,.btn-buy,#place_order{padding:15px 18px!important}
  .row{grid-template-columns:24px 1fr;row-gap:6px}
  .row .pr{grid-column:2;text-align:left}
  .row .add{grid-column:2;justify-self:start}
  .th-file{flex-direction:column;align-items:flex-start;gap:12px}
  .th-meta dl{grid-template-columns:1fr;gap:2px 0}
  .th-meta dd{margin-bottom:10px}
  .fbot{flex-direction:column;gap:8px}
  .facts dl{grid-template-columns:1fr}
  .facts dd{text-align:left;margin-bottom:8px;color:var(--ink)}
}
/* Woo:s tvakolumnsblock ska staplas - temat gor sin egen kolumnindelning */
form.checkout .col2-set{display:block}
form.checkout .col2-set .col-2{margin-top:26px}
form.checkout .col2-set .col-2:empty{display:none}
/* Utan frakt-/extrafalt ar col-2 tom fast den innehaller tomma divar. */
form.checkout .col2-set .col-2:not(:has(.form-row)){display:none;margin-top:0}


/* ------------------------------------------------------------ Angerfunktionen
   Sidan /angra-kop/ - 2 kap. 10 a § distansavtalslagen. Formularet ska vara
   latt att hitta och latt att fylla i; darfor bred ruta, tydliga etiketter och
   ingen dekoration som kan tas for reklam. */
.jm-angra .m-in{max-width:680px}
.angra-intro{margin-bottom:26px}
.angra-obs{background:var(--o-tint);border-left:3px solid var(--o);padding:13px 16px;font-size:14.5px}
.angra-fel{border-left:3px solid #B00020;background:#FDF1F2;padding:12px 16px;margin:0 0 22px}
.angra-fel ul{margin:0;padding-left:18px;font-size:14.5px;color:#7A0016}
.angra-fel li+li{margin-top:5px}

.angra-form{border:1px solid var(--line);background:#fff;padding:26px 26px 22px}
.af-rad{display:block;margin:0 0 18px}
.af-rad label,.af-bekraft label{display:block;font-size:12.5px;letter-spacing:.02em;font-weight:500;color:var(--ink);margin-bottom:6px}
.af-req{color:var(--o-deep)}
.af-rad input[type=text],
.af-rad input[type=email],
.af-rad select,
.af-rad textarea{
  width:100%;border:1px solid var(--line);background:#fff;padding:11px 13px;
  font-family:inherit;font-size:15px;color:var(--ink);border-radius:0;outline:none
}
.af-rad input:focus,.af-rad select:focus,.af-rad textarea:focus{border-color:var(--ink)}
.af-rad textarea{resize:vertical;min-height:96px}
.af-hjalp{display:block;margin-top:6px;font-size:12.5px;color:var(--mute);line-height:1.5}

.af-bekraft{display:flex;align-items:flex-start;gap:10px;margin:22px 0 0;padding:14px 16px;background:var(--tile)}
.af-bekraft input[type=checkbox]{margin:2px 0 0;width:16px;height:16px;accent-color:var(--o-deep);flex:none}
.af-bekraft label{margin:0;font-size:14px;font-weight:400;line-height:1.5}

/* Skrapskyddsfaltet ska aldrig synas eller na tangentbordet. */
.af-falla{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.af-skicka{margin:20px 0 0}
.af-skicka .btn{width:100%;justify-content:center;padding:15px 22px}

.angra-klart{border:1px solid var(--line);background:var(--tile);padding:26px 28px}
.angra-klart-rubrik{font-family:"Source Serif 4",Georgia,serif;font-size:21px;line-height:1.3;margin:0 0 10px}
.angra-klart p{font-size:15px;line-height:1.7;color:#3E3A35;margin:0 0 12px}
.angra-klart p:last-child{margin-bottom:0}
.angra-klart .btn{margin-top:6px;display:inline-flex;width:auto}

@media (max-width:640px){
  .angra-form{padding:20px 18px 18px}
  .af-rad input[type=text],.af-rad input[type=email],.af-rad select,.af-rad textarea{font-size:16px}
  .angra-klart{padding:20px 18px}
}
