/* Boio Flyttpaketet – riktning R3 "Leken" (godkänd 7/10). Mobil först, egen datorlayout från 1024 px.
   Petrol bara på datumkortet och huvudknappen. Tjänsternas färger bara som liten markör i hörnet. */
@font-face{font-family:Archivo;font-style:normal;font-weight:400 800;font-stretch:62% 125%;font-display:swap;
  src:url(/flyttpaket/fonts/archivo-62-125-400-800.woff2) format("woff2")}

:root{
  --petrol:#0a7d8c;--petrol-l:#dff1f2;--petrol-m:#8ccbd2;--petrol-d:#063f47;
  --bas:#f6f3ee;--vit:#fff;--blck:#16130f;--gra:#55514b;--linje:rgba(22,19,15,.09);--gjord:#efebe4;
  --el:#ffdd4a;--bb:#ff8fb8;--fors:#3ee0a8;--lan:#7a1fe0;--flytt:#e8782a;--neutral:#b9b2a6;
  --r:28px;--r-s:18px;--wide:"wdth" 125;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bas);color:var(--blck);font-family:Archivo,system-ui,sans-serif;font-size:17px;line-height:1.5;font-variation-settings:"wdth" 100;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--petrol-d);outline-offset:3px;border-radius:8px}
.wrap{max-width:1280px;margin:0 auto;padding:0 16px}
.tnum{font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:8px;background:var(--vit);padding:10px 14px;border-radius:10px;z-index:10}
.skip:focus{left:16px}

/* topp */
.top{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{display:flex;align-items:center;text-decoration:none}
.logo svg{display:block;height:30px;width:auto}
.top nav a{font-size:15px;color:var(--blck);text-decoration:none;font-weight:500;padding:10px 0}
.top nav a:hover{text-decoration:underline}

/* hjälte */
.hero{padding-top:20px}
.hero-head{display:grid;gap:12px}
h1{font-size:clamp(37px,10.4vw,80px);line-height:.98;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.025em;max-width:13ch;text-wrap:balance}
.lead{color:var(--gra);font-size:18px;max-width:34ch}

.bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense;gap:10px;margin-top:22px}
.card{position:relative;border-radius:var(--r);background:var(--vit);overflow:hidden;min-height:156px}
.photo{grid-column:span 2;aspect-ratio:16/11;min-height:0}
.photo img,.photo-2 img{width:100%;height:100%;object-fit:cover}
.photo-2{grid-column:span 2;aspect-ratio:16/9;min-height:0}

/* datumkortet – enda färgytan */
.datum{grid-column:span 2;background:var(--petrol);color:#fff;padding:22px 20px 20px;display:grid;gap:16px}
.dagar{display:flex;align-items:flex-end;gap:12px}
.dagar .n{font-size:88px;line-height:.8;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.04em;transition:opacity .2s,transform .2s}
.dagar .n.byt{opacity:0;transform:translateY(8px)}
/* Siffran är tom tills flyttdag är vald: då tar den ingen plats. */
.dagar .n:empty,.tid-topp .n:empty{display:none}
/* Hjältekortet på /flyttpaket: raden "Välj flyttdag" sa samma sak som fältet "Flyttdag" strax under. Den syns när dagarna är räknade. */
.pk-kort .dagar:has(.n:empty){display:none}
.dagar .t{font-size:16px;line-height:1.25;font-weight:500;padding-bottom:2px}
.dagar .t small{display:block;font-size:15px;font-weight:400;opacity:.92}
.falt{display:grid;gap:8px}
.falt label{font-size:15px;font-weight:600}
.rad{display:grid;grid-template-columns:1fr;gap:8px}
input[type=date]{appearance:none;-webkit-appearance:none;width:100%;height:54px;border:0;border-radius:16px;background:#fff;color:var(--blck);font:500 17px Archivo,system-ui,sans-serif;padding:0 16px;font-variant-numeric:tabular-nums;min-width:0}
input[type=date]:focus-visible{outline:3px solid #fff;outline-offset:3px}
.integritet{font-size:13px;opacity:.88}
.knapp{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 24px;border-radius:16px;border:0;font:700 17px Archivo,system-ui,sans-serif;font-variation-settings:"wdth" 110;text-decoration:none;cursor:pointer;transition:transform .15s;text-align:center}
.knapp:active{transform:scale(.98)}
.knapp-vit{background:#fff;color:var(--petrol-d)}
.knapp-vit:focus-visible{outline-color:#fff}
.knapp-petrol{background:var(--petrol);color:#fff}
.knapp-linje{background:transparent;color:var(--blck);box-shadow:inset 0 0 0 1.5px var(--blck);min-height:48px;font-size:16px;padding:0 20px}
.textlank{color:var(--petrol-d);font-weight:600;text-underline-offset:3px}

/* delkort */
.del{text-decoration:none;color:inherit;cursor:pointer;padding:18px 18px 16px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s ease,box-shadow .2s ease}
.del:hover{transform:translateY(-2px);box-shadow:0 10px 30px -18px rgba(6,63,71,.45)}
.del.ljus{background:var(--petrol-l)}
.del-text{position:relative;z-index:2;display:block}
.del-namn{display:block;font-size:18px;line-height:1.05;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em;max-width:9ch;padding-right:14px}
.del-namn .namn{position:relative;display:inline}
.del-namn .namn::after{content:"";position:absolute;left:0;right:0;top:55%;height:3px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.del .nar{display:block;font-size:14px;color:var(--gra);line-height:1.3;margin-top:4px}
.del .nar b{color:var(--petrol-d);font-weight:700}
.del .form{position:absolute;right:-14px;bottom:-14px;width:104px;height:104px;transition:transform .25s ease;z-index:1}
.del:hover .form{transform:translate(-5px,-5px) rotate(-4deg)}
.del .klar{display:none;font-size:14px;font-weight:700;color:var(--petrol-d);margin-top:4px}
.del.gjord .namn::after{transform:scaleX(1)}
.del.gjord .form{opacity:.35;filter:grayscale(1)}
.del.gjord .nar{display:none}
.del.gjord .klar{display:block}
.del.gjord{background:var(--gjord)}
.bred{grid-column:span 2}
.bred .del-namn{max-width:none}
.bred .form{width:132px;height:132px;right:-6px;bottom:-26px}

/* tjänstmarkören: liten form, aldrig yta */
.mark{display:inline-block;width:12px;height:12px;background:var(--m);border-radius:3px;flex:none}
.mark-bage{border-radius:12px 0 0 0;width:13px;height:13px}
.mark-sim{border-radius:2px;clip-path:polygon(38% 0,100% 0,100% 100%,0 100%,0 38%)}
.del>.mark{position:absolute;top:20px;right:16px;z-index:2}

.ersatt{margin-top:16px;font-size:14px;color:var(--gra)}
.ersatt a{color:var(--petrol-d);font-weight:600}

/* sektioner */
main>section.wrap{margin-top:88px}
h2{font-size:clamp(29px,7.4vw,52px);line-height:1.02;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.025em;max-width:16ch;text-wrap:balance}
.ingress{color:var(--gra);margin-top:12px;max-width:44ch}
.kalla{font-size:13px;color:var(--gra);margin-top:8px}
.kalla a{color:var(--gra)}
p.nar{font-size:14px;color:var(--gra);font-weight:500}
p.nar b{color:var(--petrol-d);font-weight:700}

/* delarna i flyttordning */
.delar{margin-top:28px;border-top:1.5px solid var(--blck)}
.dr{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:24px 0;border-bottom:1px solid var(--linje)}
.dr .ruta{width:56px;height:56px;border-radius:16px;background:var(--petrol-l);overflow:hidden;position:relative}
.dr .ruta svg{position:absolute;inset:6px;width:44px;height:44px}
.dr h2{font-size:23px;line-height:1.1;max-width:none;letter-spacing:-.02em;margin-top:2px}
.dr h2 .mark{margin-right:10px;vertical-align:.16em}
.dr h2 .mark+.mark{margin-left:-4px}
.dr-text>p:not(.nar):not(.kalla){color:var(--gra);font-size:16px;margin-top:6px;max-width:46ch}
.dr .handling{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}

/* försäkring */
.fors{display:grid}
.fors .bild{border-radius:var(--r);overflow:hidden;aspect-ratio:4/3}
.fors .bild img{width:100%;height:100%;object-fit:cover}
.fors .text{background:var(--vit);border-radius:var(--r);padding:26px 22px;margin:-48px 12px 0;position:relative}
.fors .text h2{margin-top:6px}
.fors .text>p:not(.nar):not(.kalla):not(.not){color:var(--gra);margin-top:12px}
.fors .handling{margin-top:20px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.not{font-size:14px;color:var(--gra);margin-top:12px}

/* situationer */
.sit{margin-top:24px;display:grid;gap:10px}
.sit a,.syskon a{position:relative;display:grid;gap:2px;padding:20px 52px 20px 20px;border-radius:var(--r-s);background:var(--vit);text-decoration:none;transition:transform .2s ease}
.sit a:hover,.syskon a:hover{transform:translateY(-2px)}
.sit b,.syskon b{font-size:21px;line-height:1.1;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em}
.sit span,.syskon span{color:var(--gra);font-size:15px}
.sit i,.syskon i{position:absolute;right:20px;top:50%;transform:translateY(-50%);font-style:normal;font-size:20px;color:var(--petrol-d)}
.sit-ko{margin-top:16px;color:var(--gra);font-size:16px}
.sit-ko a{color:var(--petrol-d);font-weight:600}

/* betalt */
.betalt{background:var(--vit);border-radius:var(--r);padding:30px 22px;display:grid;gap:22px}
.betalt .stor{font-size:clamp(40px,11vw,84px);line-height:.95;letter-spacing:-.035em;max-width:none}
.betalt .pkt{display:grid;gap:18px}
.betalt .pkt>div{border-top:1px solid var(--linje);padding-top:14px}
.betalt h3{font-size:17px;font-weight:700}
.betalt p{color:var(--gra);font-size:16px;margin-top:2px}

/* frågor */
.faq-wrap{display:grid;gap:20px}
.faq-wrap .textlank{display:inline-block;margin-top:14px}
.faq{border-top:1.5px solid var(--blck)}
.faq details{border-bottom:1px solid var(--linje)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-size:19px;font-weight:700;line-height:1.25}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:28px;height:28px;border-radius:50%;background:var(--petrol-l);position:relative}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:8px;right:8px;top:13px;height:2px;background:var(--petrol-d);transition:transform .2s}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i::after{transform:rotate(0)}
.faq p{color:var(--gra);padding:0 0 22px;max-width:56ch}
.faq p a{color:var(--petrol-d)}

/* undersidor */
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px;color:var(--gra);padding-top:8px}
.crumbs li+li::before{content:"›";margin-right:8px}
.crumbs a{color:var(--gra)}
.sidrubrik{padding-top:24px;display:grid;gap:24px}
.sidrubrik h1{font-size:clamp(34px,9vw,68px);max-width:16ch}
.sidrubrik .lead{margin-top:14px}
.sr-bild{border-radius:var(--r);overflow:hidden;aspect-ratio:3/2}
.sr-bild img{width:100%;height:100%;object-fit:cover}
.fel-act{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.stomme{margin-top:40px}
.stomme>p{color:var(--gra);margin-bottom:20px}
.stomme>p a{color:var(--petrol-d)}
.syskon{display:grid;gap:10px}
.prosa{margin-top:56px}
.prosa h2{font-size:clamp(26px,6.4vw,40px);max-width:22ch}
.prosa p{color:var(--gra);margin-top:12px;max-width:60ch}
.prosa p a{color:var(--petrol-d)}

/* bladet */
dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;inset:0}
dialog::backdrop{background:rgba(22,19,15,.38)}
.blad{position:absolute;left:0;right:0;bottom:0;background:var(--vit);border-radius:28px 28px 0 0;padding:14px 22px 28px;max-height:88vh;overflow:auto;animation:upp .25s ease}
.blad .grepp{width:44px;height:5px;border-radius:3px;background:rgba(22,19,15,.15);margin:0 auto 18px}
.blad .huvud{display:flex;align-items:center;gap:14px;padding-right:44px}
.blad .ruta{width:56px;height:56px;border-radius:16px;background:var(--petrol-l);flex:none;position:relative;overflow:hidden}
.blad .ruta svg{position:absolute;inset:5px;width:46px;height:46px}
.blad h2{font-size:24px;line-height:1.1;max-width:none}
.blad .innehall>p{color:var(--gra);margin-top:14px}
.blad .innehall .not{font-size:14px}
.blad .handling{display:grid;gap:10px;margin-top:20px}
.blad .handling .knapp{width:100%}
.blad .stang{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:0;background:var(--bas);cursor:pointer;font-size:22px;line-height:40px;color:var(--blck)}
.blad .gjordknapp{width:100%;margin-top:10px}
@keyframes upp{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}

@media (max-width:719px){
  /* Mobil: hemförsäkringsrutan är 1×1 med tre textrader; mindre paraply så att det inte går in i "Gäller från". */
  .tall .form{width:80px;height:80px;right:-8px;bottom:-10px}
}
@media (min-width:720px){
  .bento{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .photo{aspect-ratio:auto;grid-column:span 2;grid-row:span 2}
  .photo-2{grid-column:auto;aspect-ratio:auto;min-height:156px}
  .tall{grid-row:span 2}
  .tall .form{width:132px;height:132px;right:-18px;bottom:-8px}
  .sit{grid-template-columns:repeat(2,1fr)}
  .syskon{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){
  .wrap{padding:0 32px}
  .top{height:76px}
  .top .logo svg{height:38px}
  .hero{padding-top:28px}
  .hero-head{grid-template-columns:3fr 1fr;align-items:end;gap:32px}
  h1{max-width:none}
  .hero .lead{padding-bottom:10px}
  .bento{grid-auto-rows:244px;gap:16px;margin-top:36px}
  .card{min-height:0}
  .datum{grid-column:3 / span 2;grid-row:1;grid-template-columns:1fr 1.15fr;align-items:stretch;padding:28px;gap:28px}
  .dagar{flex-direction:column;align-items:flex-start;justify-content:space-between}
  .dagar .n{font-size:128px}
  .falt{align-content:end}
  .del{padding:24px}
  .del-namn{font-size:26px}
  .del>.mark{top:24px;right:24px}
  .del .form{width:140px;height:140px}
  .tall .form{width:210px;height:210px;right:-30px;bottom:-24px}
  .bred .form{width:190px;height:190px;right:18px;bottom:-40px}
  main>section.wrap{margin-top:136px}
  .ord-head{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:40px}
  .delar{display:grid;grid-template-columns:1fr 1fr;column-gap:56px;margin-top:44px}
  .dr{grid-template-columns:76px minmax(0,1fr);gap:22px;padding:32px 0}
  .dr .ruta{width:76px;height:76px;border-radius:20px}
  .dr .ruta svg{inset:8px;width:60px;height:60px}
  .dr h2{font-size:28px}
  .dr.helrad{grid-column:span 2}
  .fors{grid-template-columns:7fr 5fr;align-items:center}
  .fors .bild{aspect-ratio:auto;height:600px}
  .fors .text{margin:0 0 0 -96px;padding:44px 40px}
  .sit{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
  .sit a{min-height:128px;align-content:end;padding:24px}
  .sit i{top:24px;transform:none}
  .betalt{grid-template-columns:1.1fr 1fr;padding:56px;gap:56px;align-items:start}
  .betalt .pkt{gap:22px}
  .faq-wrap{grid-template-columns:1fr 1.4fr;gap:56px;align-items:start}
  .sidrubrik.med-bild{grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;padding-top:40px}
  dialog .blad{left:50%;right:auto;bottom:auto;top:50%;width:560px;border-radius:28px;transform:translate(-50%,-50%);padding:32px 36px 36px;animation:none}
  .blad .grepp{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* ── Undersidor, första halvan (flytta-el-och-bredband, hemforsakring-vid-flytt, ny-bostad, fatt-lagenhet).
   Hjälten: H1 + bento med foto, petrol-tidskortet (enda färgytan) och sidans egna ljusa kort. lib/boio-flyttpaket/pages/del1.ts ── */
.uh{padding-top:20px}
.uh-text{display:grid;gap:14px}
.uh h1{font-size:clamp(31px,8.4vw,72px);max-width:15ch;hyphens:manual}
.uh .lead{max-width:42ch}
.uh-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense;gap:10px;margin-top:22px}
.uh-foto{grid-column:span 2;aspect-ratio:16/11;min-height:0}
.uh-foto-2{grid-column:span 2;aspect-ratio:16/9;min-height:0}
.uh-foto img,.uh-foto-2 img{width:100%;height:100%;object-fit:cover}
.tid{grid-column:span 2;background:var(--petrol);color:#fff;padding:22px 20px 20px;display:grid;gap:18px;align-content:start}
.tid-topp{display:flex;align-items:flex-end;gap:12px}
.tid-topp .n{font-size:76px;line-height:.8;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.04em;transition:opacity .2s,transform .2s}
.tid-topp .n.byt{opacity:0;transform:translateY(8px)}
.tid-topp .t{font-size:16px;line-height:1.25;font-weight:500;max-width:12ch;padding-bottom:2px}
.tid-rader{list-style:none;border-top:1px solid rgba(255,255,255,.3)}
.tid-rader li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.3);font-size:16px;line-height:1.3}
.tid-rader li>span{display:flex;align-items:baseline;gap:10px;min-width:0}
.tid-rader .mark{width:10px;height:10px;transform:translateY(-1px)}
.tid-rader b{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.tid-rader li.mal{font-weight:600}
.tid-rader li.mal b{font-size:21px;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em}
.tid-spar .tid-rader{border-top:0}
.tid-spar .tid-rader li{position:relative;padding:9px 0 9px 26px;border-bottom:0}
.tid-spar .tid-rader li::before{content:"";position:absolute;left:3px;top:16px;width:9px;height:9px;border-radius:50%;background:#fff;z-index:1}
.tid-spar .tid-rader li::after{content:"";position:absolute;left:7px;top:22px;bottom:-16px;width:1.5px;background:rgba(255,255,255,.45)}
.tid-spar .tid-rader li:last-child::after{display:none}
.tid-spar .tid-rader li.mal::before{left:0;top:15px;width:15px;height:15px;background:var(--petrol-l);box-shadow:0 0 0 4px rgba(255,255,255,.22)}
.tid-spar .mark{display:none}
.uh-kort{background:var(--petrol-l);padding:18px;display:flex;flex-direction:column;justify-content:space-between;min-height:150px;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease}
.uh-kort:hover{transform:translateY(-2px);box-shadow:0 10px 30px -18px rgba(6,63,71,.45)}
.uh-kort-text{position:relative;z-index:2;display:grid;gap:4px;max-width:72%}
.uh-kort b{font-size:19px;line-height:1.05;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em;padding-right:18px}
.uh-kort-text>span{font-size:14px;color:var(--gra);line-height:1.3}
.uh-kort .uh-form{position:absolute;right:-14px;bottom:-14px;width:96px;height:96px;transition:transform .25s ease;z-index:1}
.uh-kort:hover .uh-form{transform:translate(-5px,-5px) rotate(-4deg)}
.uh-kort>.mark{position:absolute;top:20px;right:16px;z-index:2}
.uh-kort.bred-m{grid-column:span 2}
.uh-kort.bred-m .uh-form{width:124px;height:124px;right:-4px;bottom:-22px}
/* Wifi-bågen är ritad mot sitt nedre högra hörn: den ska sitta i kortets hörn, aldrig fritt (annars syns snittet). */
.uh-kort .uh-form.horn,.uh-kort.dubbel .uh-form.horn,.uh-kort.bred-m .uh-form.horn{right:0;bottom:0}
@media (max-width:719px){
  .uh-kort{min-height:176px}
  .uh-kort-text{max-width:100%}
}
.las-h{font-size:15px;font-weight:700;color:var(--gra);margin-bottom:14px}
.betalt .pkt .knapp{justify-self:start}
.betalt .pkt>.handling{border-top:0;padding-top:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
/* El-sidan: i dag mot från 1 juli 2027 */
.fe{display:grid;gap:24px}
.fe-text>p:not(.kalla){color:var(--gra);margin-top:12px;max-width:44ch}
.fe .handling{margin-top:20px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.fe-par{display:grid;gap:8px}
.fe-k{background:var(--vit);border-radius:var(--r);padding:24px 22px;display:grid;gap:6px;align-content:start}
.fe-k b{font-size:26px;line-height:1.05;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em}
.fe-k span{color:var(--gra);font-size:16px}
.fe-sen{background:var(--petrol-l)}
.fe-pil{justify-self:center;font-size:24px;line-height:1;color:var(--petrol-d);transform:rotate(90deg)}
@media (min-width:720px){
  .uh-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .uh-foto{grid-column:1 / span 2;grid-row:span 2;aspect-ratio:auto;min-height:340px}
  .tid{grid-column:3 / span 2;grid-row:span 2;grid-template-rows:auto auto 1fr auto}
  .tid .falt{align-self:end}
  .uh-kort.dubbel{grid-column:span 2}
  .uh-kort.dubbel .uh-form{width:124px;height:124px;right:-4px;bottom:-22px}
  .uh-foto-2{aspect-ratio:auto;min-height:200px}
  .uh-foto img,.uh-foto-2 img{position:absolute;inset:0}
}
@media (min-width:1024px){
  .uh{padding-top:32px}
  .uh-text{grid-template-columns:3fr 2fr;align-items:end;gap:48px}
  .uh .lead{padding-bottom:8px}
  .uh-grid{grid-auto-rows:minmax(232px,auto);gap:16px;margin-top:36px}
  .tid{padding:28px;gap:22px}
  .tid-topp .n{font-size:104px}
  .tid .falt{grid-template-columns:auto 1fr;align-items:center;gap:16px}
  .uh-kort{padding:24px}
  .uh-kort b{font-size:26px}
  .uh-kort .uh-form{width:140px;height:140px}
  .uh-kort.dubbel .uh-form,.uh-kort.bred-m .uh-form{width:184px;height:184px;right:18px;bottom:-36px}
  .uh-kort>.mark{top:24px;right:24px}
  .las .syskon{grid-template-columns:repeat(3,1fr);gap:16px}
  .fe{grid-template-columns:1fr 1.25fr;gap:56px;align-items:center}
  .fe-par{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
  .fe-pil{transform:none}
  .fe-k{min-height:250px;padding:32px;align-content:end}
  .fe-k b{font-size:32px}
}

/* ===== undersidor B: kopt-bostad, flytta-hemifran, sa-tjanar-vi-pengar, fragor (lib/boio-flyttpaket/pages/undersida-b.ts).
   Egna klasser .ub-*, .fl-*, .ers*, .fr-* så att de inte krockar med första halvans .uh-*. ===== */
.ub{padding-top:20px}
.ub-head{display:grid;gap:12px}
.ub-head h1{font-size:clamp(36px,9.6vw,76px);max-width:15ch}
.ub-bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
.ub-foto{grid-column:span 2;aspect-ratio:3/2;min-height:0}
.ub-foto img{width:100%;height:100%;object-fit:cover}
.ub-nyckel{grid-column:span 2;background:var(--petrol);color:#fff;padding:24px 20px 20px;display:flex;flex-direction:column;gap:12px}
.ub-eti{font-size:14px;font-weight:600;opacity:.92}
.ub-stor{font-size:clamp(30px,8vw,46px);line-height:1.02;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.025em;max-width:15ch;text-wrap:balance}
.ub-text{font-size:16px;opacity:.94;max-width:40ch}
.ub-nyckel .knapp{margin-top:6px;width:100%}
.ub-betalt .ub-stor{font-size:clamp(52px,14vw,112px);line-height:.92;letter-spacing:-.04em}
.fr-index{display:grid;margin-top:4px;border-top:1px solid rgba(255,255,255,.32)}
.fr-index a{display:flex;gap:14px;align-items:baseline;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.32);color:#fff;text-decoration:none;font-weight:700;font-size:18px;font-variation-settings:"wdth" 110}
.fr-index a span{font-size:13px;font-weight:500;opacity:.8;min-width:20px}
.fr-index a:hover{text-decoration:underline;text-underline-offset:4px}
.fr-index a:focus-visible{outline-color:#fff}
.fl-tva{display:grid;gap:4px}
.fl-val{display:grid;gap:10px;margin-top:20px}
.fl-val>div{background:var(--vit);border-radius:var(--r-s);padding:22px}
.fl-val h3{font-size:21px;line-height:1.1;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.02em}
.fl-val p{margin-top:8px;font-size:16px}
.fl-ko{background:var(--vit);border-radius:var(--r);padding:28px 22px;display:grid;gap:20px}
.fl-ko p{color:var(--gra);margin-top:12px;max-width:52ch}
.fl-ko .handling{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.fl-flode{list-style:none;display:grid;gap:10px;margin-top:28px}
.fl-flode li{background:var(--vit);border-radius:var(--r-s);padding:20px;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:14px;row-gap:2px}
.fl-nr{grid-row:span 2;width:44px;height:44px;border-radius:14px;background:var(--petrol-l);color:var(--petrol-d);display:grid;place-items:center;font-weight:800;font-size:20px;font-variation-settings:var(--wide)}
.fl-flode b{font-size:19px;line-height:1.15;font-variation-settings:var(--wide);font-weight:800;letter-spacing:-.015em}
.fl-flode li>span:last-child{color:var(--gra);font-size:15px}
.ers{margin-top:20px;border-top:1.5px solid var(--blck)}
.ers-rad{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--linje)}
.ers-namn{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;font-variation-settings:var(--wide);letter-spacing:-.015em}
.ers-namn a{text-decoration:none}
.ers-namn a:hover{text-decoration:underline}
.ers-status{font-size:14px;font-weight:700;color:var(--petrol-d);align-self:center;text-align:right}
.ers-status.ingen{color:var(--gra)}
.ers-text{grid-column:1/-1;color:var(--gra);font-size:15px}
.ub-sys .syskon{margin-top:4px}
main>section.prosa+section.prosa,main>section.fr-amne+section.fr-amne{margin-top:56px}
.prosa+.prosa .fl-tva{border-top:1px solid var(--linje);padding-top:28px}
@media (min-width:720px){
  .fl-val{grid-template-columns:1fr 1fr}
  .ub-nyckel .knapp{width:auto;align-self:flex-start}
}
@media (min-width:1024px){
  .ub{padding-top:28px}
  .ub-head{grid-template-columns:3fr 1.1fr;align-items:end;gap:32px}
  .ub-head h1{max-width:none}
  .ub-head .lead{padding-bottom:8px}
  .ub-bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(228px,auto);gap:16px;margin-top:36px}
  .ub-foto{grid-column:1/span 2;grid-row:span 2;aspect-ratio:auto}
  .ub-foto img{position:absolute;inset:0}
  .ub-nyckel{grid-column:3/span 2;padding:30px 32px}
  .ub-nyckel .knapp{margin-top:auto}
  .ub-betalt .ub-nyckel,.ub-fragor .ub-nyckel{grid-row:span 2;justify-content:space-between}
  .ub-betalt .ub-text{font-size:18px}
  .ub-fragor .ub-stor{font-size:52px}
  .fr-index a{font-size:22px;padding:15px 0}
  .fl-tva{grid-template-columns:1fr 1.35fr;gap:56px;align-items:start}
  .fl-tva>div>p:first-child{margin-top:4px}
  .fl-ko{grid-template-columns:1.5fr 1fr;align-items:end;padding:48px}
  .fl-ko .handling{justify-content:flex-end}
  .fl-flode{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
  .fl-flode li{grid-template-columns:1fr;padding:28px;min-height:220px;align-content:start}
  .fl-nr{grid-row:auto;margin-bottom:36px;width:52px;height:52px}
  .fl-flode b{font-size:24px}
  .ers{margin-top:28px}
  .ers-rad{grid-template-columns:260px 220px minmax(0,1fr);padding:22px 0;align-items:center}
  .ers-status{text-align:left}
  .ers-text{grid-column:auto}
  .ub-sys .syskon{grid-template-columns:repeat(3,1fr);gap:16px}
  main>section.prosa+section.prosa,main>section.fr-amne+section.fr-amne{margin-top:72px}
  .prosa+.prosa .fl-tva{padding-top:44px}
}

/* ── Landningens hjälte (8/10): flyttdag + postnummer → listan i rätt ordning. lib/boio-flyttpaket/pages/flyttlista.ts
   Petrol bara på kortet med fälten och huvudknappen; listan är vit, bockarna petrol. ── */
.pk-grid{display:grid;gap:10px;margin-top:22px}
.pk-kort{background:var(--petrol);color:#fff;border-radius:var(--r);padding:22px 20px 20px;display:grid;gap:18px;align-content:start}
.pk-fram{display:grid;gap:8px}
.pk-bar{height:8px;border-radius:4px;background:rgba(255,255,255,.24);overflow:hidden}
.pk-bar i{display:block;height:100%;border-radius:4px;background:#fff;transition:width .3s ease}
#pk-klara{font-size:15px}
#pk-klara b{font-weight:700}
.pk-form{display:grid;gap:14px}
.pk-falt{display:grid;gap:8px;min-width:0}
.pk-falt label{font-size:15px;font-weight:600}
.pk-rad{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.pk-kort input[type=text]{appearance:none;-webkit-appearance:none;width:100%;min-width:0;height:54px;border:0;border-radius:16px;background:#fff;color:var(--blck);font:500 17px Archivo,system-ui,sans-serif;padding:0 16px;font-variant-numeric:tabular-nums}
.pk-kort input::placeholder{color:#8f897f}
.pk-kort input:focus-visible{outline:3px solid #fff;outline-offset:3px}
.pk-rad .knapp{padding:0 18px;white-space:nowrap}
.pk-svar{font-size:14px;font-weight:500}
.pk-svar:empty{display:none}

.pk-lista{background:var(--vit);border-radius:var(--r);padding:22px 18px 6px}
.pk-lista h2{font-size:23px;line-height:1.1;letter-spacing:-.02em;max-width:none}
.steglista{list-style:none;margin-top:10px}
.steg{position:relative;display:grid;gap:2px;padding:14px 0;border-top:1px solid var(--linje)}
.steg:first-child{border-top:0}
.steg label{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:14px;cursor:pointer}
.bock{position:absolute;left:0;top:14px;width:28px;height:28px;margin:0;opacity:0;cursor:pointer}
.ring{grid-row:span 2;width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--blck);position:relative;transition:background .15s,box-shadow .15s}
.ring::after{content:"";position:absolute;left:10px;top:6px;width:7px;height:12px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) scale(.4);opacity:0;transition:transform .15s,opacity .15s}
.bock:checked+label .ring{background:var(--petrol);box-shadow:none}
.bock:checked+label .ring::after{opacity:1;transform:rotate(45deg) scale(1)}
.bock:focus-visible+label .ring{outline:3px solid var(--petrol-d);outline-offset:3px}
.steg-namn{font-size:17px;font-weight:700;line-height:1.25;padding-top:3px;overflow-wrap:anywhere}
.steg-nar{font-size:14px;color:var(--gra);line-height:1.35;margin-top:2px}
.steg-nar b{color:var(--petrol-d);font-weight:700}
.steg-ort::before{content:" · "}
.bock:checked+label .steg-namn{color:var(--gra);text-decoration:line-through;text-decoration-thickness:1.5px}
.bock:checked+label .steg-nar b{color:var(--gra)}
.steg-lank{justify-self:start;display:inline-flex;align-items:center;min-height:44px;margin-left:42px;margin-top:4px;padding:10px 0;font-size:15px;font-weight:600;color:var(--petrol-d);text-decoration:none}
.steg-lank:hover{text-decoration:underline;text-underline-offset:3px}

.pk-foto{border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;position:relative}
.pk-foto img{width:100%;height:100%;object-fit:cover}

@media (max-width:379px){
  .pk-kort{padding:20px 16px 18px}
  .pk-rad .knapp{padding:0 14px;font-size:16px}
  .pk-lista{padding:20px 14px 4px}
}
@media (min-width:1024px){
  .pk-grid{grid-template-columns:5fr 7fr;grid-template-rows:auto 1fr;grid-template-areas:"kort lista" "foto lista";gap:16px;margin-top:36px;align-items:start}
  .pk-kort{grid-area:kort;padding:28px;gap:22px}
  .pk-lista{grid-area:lista;padding:30px 32px 10px}
  .pk-lista h2{font-size:28px}
  .pk-foto{grid-area:foto;aspect-ratio:auto;align-self:stretch;min-height:240px}
  .pk-foto img{position:absolute;inset:0}
  .steg{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:20px;padding:15px 0}
  .bock{top:15px}
  .steg-lank{margin:0;justify-self:end;text-align:right}
}

/* Källorna i en rad längst ner (granskningen 11/10) */
.kallor-sida{margin-top:56px;font-size:13px;color:var(--gra)}
.kallor-sida a{color:var(--gra)}
.fp-ring{margin-top:48px;font-size:16px;color:var(--gra)}.fp-ring a{color:inherit;text-decoration:underline;text-underline-offset:3px}
