/* Billåsspecialisten — Stockholmssidan. Byggd 2026-08-28.
   Idén i en mening: en ringknapp med en verkstad bakom.
   Färgerna är kundens egna (loggan): blå #28508f, orange #f07e07. */

:root{
  --bla:#28508f; --bla-m:#1b3a6b; --bla-l:#e9eef7;
  --orange:#f07e07; --orange-m:#c96300;
  --papper:#fbf8f2; --vit:#fff; --kol:#161a20; --gra:#5a626d; --linje:#d9d4c8;
  --font:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --ram:1280px; --kant:clamp(18px,3vw,44px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--papper);color:var(--kol);font-family:var(--font);font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--bla)}
h1,h2,h3{line-height:1.08;margin:0 0 .4em;font-weight:800;letter-spacing:-.01em}
h1{font-size:clamp(38px,5vw,66px)}
h2{font-size:clamp(30px,3.4vw,46px)}
h3{font-size:clamp(22px,2vw,27px)}
p{margin:0 0 1em}
.ram{max-width:var(--ram);margin:0 auto;padding:0 var(--kant)}
.tel{white-space:nowrap;font-variant-numeric:tabular-nums}

/* ---- banner: en del av Bilnyckelgruppen ---- */
.banner{background:var(--bla);color:#fff;font-size:16px;font-weight:600;padding:9px 0;text-align:center}
.banner b{color:#ffd9b3}

/* ---- topp ---- */
.topp{background:var(--vit);border-bottom:3px solid var(--bla);position:sticky;top:0;z-index:20}
.topp-i{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}
.logo img{height:64px;width:auto}
.topp nav{display:flex;gap:30px;font-weight:600;font-size:17px}
.topp nav a{color:var(--kol);text-decoration:none;padding:6px 0;border-bottom:3px solid transparent}
.topp nav a:hover,.topp nav a[aria-current]{border-color:var(--orange)}
.ring{display:inline-flex;align-items:center;gap:12px;background:var(--orange);color:#fff;text-decoration:none;font-weight:800;padding:14px 22px;border-radius:8px;font-size:22px;box-shadow:0 2px 0 var(--orange-m)}
.ring:hover{background:var(--orange-m)}
.ring svg{width:24px;height:24px;flex:none}
.oppet{font-size:15px;font-weight:600;color:var(--gra);text-align:right;line-height:1.25}
.oppet b{display:block;color:#1e7a3c}
.oppet.stangt b{color:#9a3a1e}
.topp-h{display:flex;align-items:center;gap:18px}

/* ---- hjälte ---- */
.hj{background:var(--vit)}
.hj-i{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(40px,6vw,84px) var(--kant)}
.hj h1{margin-bottom:.35em}
.hj h1 span{color:var(--bla)}
.hj .ingress{font-size:clamp(20px,1.6vw,24px);max-width:34ch;color:#2a2f36}
.hj-ring{margin:26px 0 22px}
.hj-ring .ring{font-size:clamp(28px,3vw,42px);padding:20px 30px;border-radius:12px;gap:16px}
.hj-ring .ring svg{width:34px;height:34px}
.hj-ring small{display:block;margin-top:10px;color:var(--gra);font-size:17px;font-weight:600}
.hj-fakta{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:17px;margin-top:8px;border-top:1px solid var(--linje);padding-top:18px}
.hj-fakta dt{font-weight:800;color:var(--bla)}
.hj-fakta dd{margin:0}
.hj-bild{position:relative}
.hj-bild img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:14px;box-shadow:0 18px 40px -22px rgba(0,0,0,.45)}
.hj-bild .stamp{position:absolute;left:-14px;bottom:26px;background:var(--bla);color:#fff;font-weight:800;padding:12px 18px;border-radius:8px;font-size:17px;line-height:1.2;transform:rotate(-2deg);box-shadow:0 8px 20px -10px rgba(0,0,0,.5)}
.hj-bild .stamp small{display:block;font-weight:600;opacity:.85;font-size:14px}

/* ---- vad har hänt ---- */
.hant{padding:clamp(48px,7vw,96px) 0}
.hant h2{max-width:22ch}
.hant .led{color:var(--gra);max-width:52ch;font-size:20px;margin-bottom:34px}
.rader{border-top:2px solid var(--kol)}
.rad{display:grid;grid-template-columns:96px 44px 1fr auto;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--linje);text-decoration:none;color:inherit}
.rad:hover{background:var(--bla-l);margin:0 calc(-1*var(--kant));padding-left:var(--kant);padding-right:var(--kant)}
.rad-bild{width:96px;height:96px;object-fit:cover;border-radius:10px}
.rad .n{font-weight:800;font-size:34px;color:var(--orange);font-variant-numeric:tabular-nums}
.rad h3{margin:0 0 4px}
.rad p{margin:0;color:var(--gra);font-size:18px}
.rad .pil{font-weight:800;color:var(--bla);font-size:20px;white-space:nowrap}

/* ---- märken ---- */
.marken{background:var(--bla);color:#fff;padding:clamp(40px,6vw,72px) 0}
.marken h2{color:#fff}
.marken .led{color:#cfdbf0;max-width:50ch;font-size:19px}
.mlist{display:flex;flex-wrap:wrap;gap:8px 0;margin:26px 0 0;padding:0;list-style:none;font-weight:700;font-size:18px;letter-spacing:.01em}
.mlist li{padding:6px 14px;border-right:1px solid rgba(255,255,255,.28);line-height:1}
.mlist li:last-child{border:0}
.marken .not{margin-top:22px;color:#cfdbf0;font-size:16px}

/* ---- varför ---- */
.varfor{padding:clamp(48px,7vw,96px) 0;background:var(--vit)}
.varfor-i{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,4vw,72px);align-items:center}
.varfor img{border-radius:14px;aspect-ratio:4/3;object-fit:cover;width:100%}
.varfor ul{padding:0;margin:20px 0 0;list-style:none;display:grid;gap:14px}
.varfor li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;font-size:19px}
.varfor li b{color:var(--bla);font-size:30px;line-height:1;font-weight:800;min-width:2.6ch}
.varfor .del{margin-top:26px;padding-top:20px;border-top:1px solid var(--linje);display:flex;align-items:center;gap:16px;color:var(--gra);font-size:17px}
.varfor .del img{height:40px;width:auto;aspect-ratio:auto;border-radius:0}

/* ---- stockholm-band ---- */
.band{position:relative;min-height:420px;display:flex;align-items:flex-end;overflow:hidden;background:#3a3f48}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.band-t{position:relative;color:#fff;padding:120px 0 44px;width:100%;background:linear-gradient(to top,rgba(10,14,22,.8),rgba(10,14,22,0))}
.band-t h2{color:#fff;margin-bottom:.25em}
.band-t p{font-size:20px;margin:0;color:#e6e9ef;max-width:60ch}

/* ---- hitta hit ---- */
.hitta{padding:clamp(48px,7vw,96px) 0}
.hitta-i{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(28px,4vw,64px)}
.karta{display:flex;flex-direction:column;gap:12px}
.karta img{width:100%;border-radius:14px;aspect-ratio:4/3;object-fit:cover}
.karta-lank{font-weight:800;font-size:19px;text-decoration:none;border-bottom:2px solid var(--orange);align-self:flex-start}
.tider{width:100%;border-collapse:collapse;font-size:19px;margin:16px 0 22px}
.tider td{padding:10px 0;border-bottom:1px solid var(--linje)}
.tider td:last-child{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.adr{font-size:21px;font-weight:700;line-height:1.35}
.adr a{color:var(--kol)}
.pkt{background:var(--bla-l);border-left:5px solid var(--orange);padding:14px 18px;border-radius:0 10px 10px 0;font-size:18px;margin-top:8px}
.hitta .ring{margin-top:22px}

/* ---- undersidor ---- */
.us{padding:clamp(36px,5vw,64px) 0 clamp(48px,7vw,96px)}
.us-i{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,72px);align-items:start}
.stig{font-size:16px;color:var(--gra);margin-bottom:18px}
.stig a{color:var(--gra)}
.us .brod{font-size:20px;max-width:58ch}
.us .brod p{margin-bottom:1.1em}
.us-bild img{border-radius:14px;width:100%;aspect-ratio:4/3;object-fit:cover}
.us-ruta{background:var(--vit);border:1px solid var(--linje);border-radius:14px;padding:26px 28px;margin-top:22px}
.us-ruta h3{margin-bottom:8px}
.us-ruta .ring{margin:14px 0 18px;font-size:26px}
.us-ruta .tider{margin:8px 0 0;font-size:17px}
.fler{margin-top:34px;padding-top:26px;border-top:1px solid var(--linje)}
.fler h3{font-size:19px;color:var(--gra);margin-bottom:10px}
.fler a{display:inline-block;margin:0 18px 8px 0;font-weight:700}

/* ---- sidfot ---- */
.fot{background:var(--kol);color:#c9ccd2;padding:44px 0 34px;font-size:16px}
.fot-i{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:34px;align-items:start}
.fot b{color:#fff;display:block;margin-bottom:6px;font-size:17px}
.fot a{color:#fff}
.fot .grupp{display:flex;align-items:center;gap:14px;margin-top:14px}
.fot .grupp img{height:36px;width:auto;filter:brightness(0) invert(1);opacity:.9}
.fot .fin{margin-top:30px;padding-top:18px;border-top:1px solid #333a44;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:14px;color:#8d939c}
.fot .fin a{color:#8d939c}

/* ---- mobil: ringknapp som alltid syns ---- */
.mob-ring{display:none}
@media (max-width:900px){
  body{font-size:17px}
  .banner{font-size:14px;padding:8px 0}
  .topp nav{display:none}
  .topp .oppet{display:none}
  .topp .ring{font-size:18px;padding:11px 16px}
  .logo img{height:48px}
  .hj-i,.varfor-i,.hitta-i,.us-i,.fot-i{grid-template-columns:1fr}
  .hj-bild{order:-1}
  .hj-bild .stamp{left:10px;bottom:10px}
  .hj-ring .ring{width:100%;justify-content:center}
  .rad{grid-template-columns:72px 1fr;gap:12px 14px}
  .rad-bild{width:72px;height:72px}
  .rad .n{display:none}
  .rad .pil{grid-column:2}
  .rad .n{font-size:26px}
  .hitta iframe{min-height:280px}
  .mob-ring{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;justify-content:center;font-size:22px;padding:16px;border-radius:12px;box-shadow:0 10px 30px -8px rgba(0,0,0,.5)}
  body{padding-bottom:84px}
}
@media (prefers-reduced-motion:no-preference){
  .rad{transition:background .15s}
}

/* ---- tjänstesidor: avsnitt + vanliga frågor (v9) ---- */
.us .brod h2{font-size:clamp(24px,2.2vw,32px);margin:1.6em 0 .45em}
.us .brod .ingress{font-size:clamp(20px,1.6vw,23px);color:#2a2f36}
.faq{margin:0 0 .5em;padding:0}
.faq dt{font-weight:800;margin:1em 0 .25em;font-size:20px}
.faq dd{margin:0 0 .6em;color:#2a2f36}
.fot a{display:inline-block;margin-bottom:2px}
/* v10: grid-barn får inte tvinga ut bredden på mobil */
.hj-i>*,.varfor-i>*,.hitta-i>*,.us-i>*,.fot-i>*{min-width:0}
.varfor img,.us-bild img,.hj-bild img{max-width:100%}
.varfor .del{display:block}
