@font-face{font-family:Anton;font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/anton-400.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/open-sans-400.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/open-sans-600.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/open-sans-700.woff2) format("woff2")}

:root{color-scheme:dark;--bg:#0b0b0c;--panel:#141415;--line:#26262a;--red:#e31b23;--tx:#f2f2f2;--mut:#a9a9ae;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:inherit}html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--bg) radial-gradient(#2a2a2e 1px,transparent 1px) 0 0/22px 22px;color:var(--tx);font:17px/1.6 "Open Sans",system-ui,sans-serif}
h1,h2,h3,.btn,nav a,.logo span{font-family:Anton,Impact,sans-serif;text-transform:uppercase;letter-spacing:.02em;font-weight:400}
a{color:inherit;text-decoration:none}.w{max-width:1100px;margin:0 auto;padding:0 20px}
.top{background:#000;font-size:13px;border-bottom:1px solid var(--line)}.top .w{display:flex;gap:22px;justify-content:center;padding:6px 20px;flex-wrap:wrap}.top b{font-weight:600}
header{position:sticky;top:0;z-index:5;background:#0b0b0cf2;border-bottom:2px solid var(--red);padding-top:env(safe-area-inset-top,0px)}
header .w{display:flex;align-items:center;gap:22px;height:66px}.logo{display:flex;align-items:center;gap:12px;font-size:23px;margin-right:auto}.logo img{width:40px;height:auto}.logo em{color:var(--red);font-style:normal}
nav{display:flex;gap:20px;align-items:center}nav a{font-size:15px;color:#ddd}nav a:hover{color:var(--red)}
.btn{display:inline-block;background:var(--red);color:#fff;padding:13px 22px;font-size:16px;border:1px solid var(--red);cursor:pointer}.btn:hover{background:#c4141b}.btn.o{background:transparent;border-color:#555}.btn.o:hover{border-color:var(--red)}
.lang{background:none;border:1px solid var(--red);color:#fff;font:600 12px "Open Sans";padding:2px 8px;cursor:pointer}
section{padding:84px 0;border-top:1px solid var(--line)}.k{color:var(--red);font:700 13px "Open Sans";letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px}
h2{font-size:clamp(34px,5vw,48px);margin:0 0 30px;line-height:1.05}h3{font-size:22px;margin:0 0 6px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;padding:60px 0 70px}
h1{font-size:clamp(46px,7.4vw,88px);line-height:.98;margin:10px 0 22px}h1 em{color:var(--red);font-style:normal}.hero p{color:var(--mut);font-size:19px;max-width:30ch}
.ph{position:relative;border:1px solid var(--line);padding:8px;background:#111;max-height:640px}.ph::before{content:"";position:absolute;left:-1px;top:-1px;width:56px;height:56px;border-top:4px solid var(--red);border-left:4px solid var(--red)}.ph img{width:100%;height:100%;max-height:620px;object-fit:cover;display:block}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.grid>div{background:var(--panel);padding:22px}.grid p{margin:0;color:var(--mut);font-size:15px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:40px}.about p{color:#cfcfd3;margin:0 0 14px}.facts{border-left:4px solid var(--red);padding-left:22px}.facts div{padding:8px 0;border-bottom:1px solid var(--line)}.facts b{font-family:Anton;font-weight:400;font-size:22px;display:block}
.box{background:var(--panel);border:1px solid var(--line);padding:26px}form{display:grid;grid-template-columns:1fr 1fr;gap:16px}form .f{grid-column:1/-1}label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:4px}
input,select,textarea{width:100%;background:#0b0b0c;color:var(--tx);border:1px solid #3a3a40;padding:11px 12px;font:inherit}input:focus,select:focus,textarea:focus,summary:focus-visible,.btn:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:2px}
#car{font-size:14px;color:var(--mut);min-height:22px;margin-top:4px}.chk{display:flex;gap:10px;font-size:14px;color:var(--mut);align-items:flex-start}.chk input{width:auto;margin-top:5px}
.hp{position:absolute;left:-9999px}#done{display:none;border-left:4px solid var(--red);background:#0b0b0c;padding:22px}#done h3{font-size:30px;display:flex;gap:12px;align-items:center}#done h3 i{background:var(--red);width:38px;height:38px;display:grid;place-items:center;font-style:normal}
#done dl{display:grid;grid-template-columns:auto 1fr;border:1px solid var(--line);margin:16px 0}#done dt,#done dd{margin:0;padding:10px 14px;border-bottom:1px solid var(--line)}#done dt{color:var(--mut);font-size:12px;letter-spacing:.1em;text-transform:uppercase}#done dd{text-align:right}
#pv{color:#e8b64a;font-size:13px}
details{border-bottom:1px solid var(--line);padding:18px 22px}summary{cursor:pointer;font-weight:700}details p{margin:8px 0 0;color:var(--mut)}.faq{background:var(--panel);border:1px solid var(--line)}details:last-child{border:0}
.doc details.long{border:1px solid var(--line);background:var(--panel);padding:0}.doc summary{padding:16px 22px}.back{margin-bottom:28px;font-size:14px;padding:9px 16px}.doc{padding-top:50px;padding-bottom:70px}.doc h4{font:700 18px "Open Sans";margin:30px 0 6px}.doc p,.doc li{color:#cfcfd3;max-width:75ch;margin-top:0}.doc small{display:block;color:var(--mut);margin:16px 0 20px}.terms li{margin:8px 0;color:#cfcfd3}.terms small,.pol small{color:var(--mut)}.pol p{color:#cfcfd3;max-width:75ch}
.loc{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:var(--panel)}.loc>div{padding:26px}.loc>div+div{border-left:1px solid var(--line)}.row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0}
iframe{width:100%;height:340px;border:1px solid var(--line);border-radius:14px;display:block;filter:grayscale(.3) invert(.92) hue-rotate(180deg)}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.ch{background:#000;color:var(--red);font-size:26px;margin:0;padding:18px 28px;border-bottom:2px solid var(--red)}.cb{padding:18px 28px 24px}.hrs{list-style:none;margin:0;padding:0}.hrs li{display:flex;justify-content:space-between;padding:10px 0;color:#d6d6da}.hrs li.cl span+span{color:#ff7b7b}.hrs li.today{font-weight:700;color:#fff}.ci{display:flex;gap:14px;align-items:flex-start;padding:10px 0}.ci svg{flex:none;margin-top:3px;color:#ddd}.ci a{color:#6fa0ff}.ci a:hover{text-decoration:underline}.nm{margin:14px 0 0 36px;font-weight:600}
@media(max-width:860px){.cards{grid-template-columns:1fr}}
.start{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.start p{margin:6px 0;color:var(--mut)}.start p b{color:#fff}
.bk{padding-top:56px;padding-bottom:80px}.bk .sub{color:var(--mut);margin:-14px 0 28px}.tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-bottom:16px;background:var(--panel)}.tabs button{background:none;border:0;border-bottom:3px solid transparent;color:#777;text-align:left;padding:18px 22px;font:400 19px Anton,sans-serif;text-transform:uppercase;cursor:pointer}.tabs button+button{border-left:1px solid var(--line)}.tabs i{display:block;font:700 12px "Open Sans";color:var(--red);font-style:normal;margin-bottom:2px}.tabs button.on{background:#1b0a0c;color:#fff;border-bottom-color:var(--red)}.tabs button:enabled:not(.on){color:#ddd}.tabs button:disabled{cursor:default}
.prow{display:flex;gap:14px;flex-wrap:wrap;align-items:stretch;margin-top:6px}.plate{display:flex;border:2px solid #1b1b1b;border-radius:4px;overflow:hidden;background:#fff;width:min(100%,400px)}.plate b{background:#0b4ea2;color:#fff;font-size:20px;width:36px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;font-weight:700}.plate input{border:0;background:#fff;color:#111;font:700 30px "Open Sans";letter-spacing:.28em;text-transform:uppercase;padding:10px 14px}.plate input::placeholder{color:#b5b5b5}.plate input:focus{outline:none}.plate:focus-within{outline:2px solid var(--red);outline-offset:2px}
.nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:disabled:hover{background:var(--red)}#car{margin-top:10px;color:var(--mut);font-size:15px;min-height:24px}#car b{color:#fff}
.svcs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.svc{display:flex;gap:10px;align-items:center;border:1px solid #3a3a40;padding:14px 16px;cursor:pointer;background:#0b0b0c;font-size:16px;color:var(--tx);letter-spacing:0;text-transform:none;margin:0}.svc input{width:auto;accent-color:var(--red)}.svc:has(input:checked){border-color:var(--red);background:#1b0a0c}.svc:has(input:focus-visible){outline:2px solid var(--red)}
@media(max-width:600px){.tabs button{padding:12px 10px;font-size:14px}.plate input{font-size:24px}}
.mapc{position:relative;border:1px solid var(--line);border-radius:14px;overflow:hidden;height:320px}.mapc svg{width:100%;height:100%;display:block}.mapo{position:absolute;left:18px;bottom:18px;display:flex;gap:10px;flex-wrap:wrap}.mapo .btn{background:var(--red)}.mapo .btn.o{background:#0b0b0c}
.promo{background:var(--red);color:#fff;text-align:center;font-size:14px;padding:7px 40px;position:relative}.promo a{text-decoration:underline;font-weight:700;margin-left:8px}.promo button{position:absolute;right:10px;top:2px;background:none;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1.6}
.rate{display:inline-flex;gap:10px;align-items:center;margin-top:24px;color:#ddd;font-size:15px}.rate i{color:#f5b301;font-style:normal;letter-spacing:2px}.rate b{color:#fff}.rate:hover span{text-decoration:underline}
.bar{border-top:1px solid var(--line);background:#0f0f10}.strip{list-style:none;margin:0;padding:16px 20px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 36px;font-weight:600;font-size:15px}.strip li::before{content:"✓";color:var(--red);margin-right:8px;font-weight:700}
.grid>div,.grid>a{background:var(--panel);padding:22px}a.sc{display:block;color:inherit}a.sc:hover{background:#1b0a0c}.more{display:block;margin-top:12px;color:var(--red);font-weight:700;font-size:14px}
.open{margin:0 0 8px;font-weight:700}.open::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;background:#e5484d}.open.on::before{background:#3ecf6e}
.lead{color:#cfcfd3;max-width:65ch;font-size:19px;margin:-10px 0 0}.sgrid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin:26px 0}.svp h3{font-size:22px;margin:0 0 8px}.svp .box h3:not(:first-child){margin-top:20px}.svp ul{color:#cfcfd3;padding-left:20px}.svp li{margin:6px 0}.svp .cta{margin-top:28px}
.mbar{display:none}.sheet{position:absolute;left:12px;bottom:100%;margin-bottom:8px;background:var(--panel);border:1px solid #3a3a40;display:grid;min-width:220px}.sheet[hidden]{display:none}.sheet a{padding:15px 18px;font-size:20px;font-weight:700}.sheet a+a{border-top:1px solid var(--line)}
@media(max-width:860px){.sgrid{grid-template-columns:1fr}.mbar{display:grid;grid-template-columns:1fr 2fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:20;background:#000;border-top:2px solid var(--red);padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}.mbar .btn{text-align:center;padding:12px 8px}body{padding-bottom:78px}}
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gal figure{margin:0;position:relative;border:1px solid var(--line);background:#111;overflow:hidden}.gal img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 14px 12px;background:linear-gradient(transparent,#000d);font:400 19px Anton,sans-serif;text-transform:uppercase;letter-spacing:.02em}
.sp{display:block;width:min(100%,380px);aspect-ratio:4/5;object-fit:cover;border:1px solid var(--line);margin:22px 0 0}
@media(max-width:860px){.gal{grid-template-columns:1fr 1fr}}
footer{background:#000;border-top:2px solid var(--red);padding:44px 0 20px;font-size:14px}.fg{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}footer h4{font:400 18px Anton;text-transform:uppercase;margin:0 0 12px}footer a{display:block;color:var(--mut);padding:3px 0}footer a:hover{color:#fff}.fb{border-top:1px solid var(--line);margin-top:30px;padding-top:16px;color:var(--mut);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
@media(max-width:860px){nav a:not(.btn){display:none}.hero,.about,.loc,.fg,form{grid-template-columns:1fr}.loc>div+div{border:0;border-top:1px solid var(--line)}.ph{order:-1;max-height:380px}header .w{gap:10px}.logo{font-size:19px}header .btn{padding:10px 12px;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

h1.pt{font-size:clamp(34px,5vw,48px);margin:0 0 30px;line-height:1.05}.err{color:#ff7b7b;grid-column:1/-1;margin:0}.mapc iframe{height:100%;border:0;border-radius:0;filter:none}

/* Satellitkarta */
.mapc{height:auto}.mapc iframe{display:block;width:100%;height:400px;border:0;filter:none}.mapo{position:static;padding:14px 16px;background:var(--panel);border-top:1px solid var(--line)}
@media(max-width:600px){.mapc iframe{height:320px}}

/* Tydligare startsida */
.regbox{margin-top:26px;max-width:520px}.regbox .prow{margin-top:8px}.hero .sec{margin:16px 0 0;font-size:15px}.hero .sec a{color:#cfcfd3;text-decoration:underline;text-underline-offset:3px}.hero .sec a:hover{color:#fff}
.band{padding:40px 0}.sm{font-size:28px;margin:0 0 6px}.start .st2{margin:8px 0 0}.start .st2 b{color:#fff}
.note{color:var(--mut);font-size:14px;margin:18px 0 0}.faqmore{margin:18px 0 0}.faqmore a{color:var(--red);font-weight:700}
@media(max-width:860px){.top .w>*:not(#lang){display:none}.top .w{justify-content:flex-end;padding:4px 14px}}

/* Rättning av hero: registreringsfältet */
.regbox{display:block;margin-top:30px;max-width:560px}
.regbox label{margin:0 0 8px}
.regbox .prow{display:flex;gap:12px;flex-wrap:nowrap;align-items:stretch;margin-top:0}
.regbox .plate{flex:1 1 auto;width:auto;min-width:0}
.regbox .plate input{font-size:26px;width:100%;min-width:0}
.regbox .btn{flex:0 0 auto;white-space:nowrap}
@media(max-width:560px){.regbox .prow{flex-wrap:wrap}.regbox .btn{width:100%;text-align:center}}

/* Rubriker: prickarna över Å Ä Ö ska inte krocka med raden ovanför */
h1{line-height:1.18}h2{line-height:1.22}h3{line-height:1.25}.t,h1.t{line-height:1.2}.k{margin-bottom:14px}.hero h1{margin:6px 0 26px}.tabs button{line-height:1.3}
/* Svensk registreringsskylt */
.plate{border:3px solid #141414;border-radius:12px;background:#f6f6f6;overflow:hidden}
.plate .eu{flex:0 0 auto;width:46px;background:#0a3fa8;display:flex}.plate .eu svg{display:block;width:100%;height:100%}
.plate input{background:#f6f6f6;color:#111;font:700 30px "Open Sans",Arial,sans-serif;letter-spacing:.22em;text-align:center;padding:10px 12px 10px 18px}
@media(max-width:600px){.plate .eu{width:40px}.plate input{font-size:24px}}

/* Priser */
.from{display:block;margin-top:12px;color:var(--mut);font-size:14px}.from b{color:#fff;font:400 22px Anton,sans-serif;letter-spacing:.02em}
.price{margin:0 0 6px;color:var(--mut)}.price b{color:#fff;font:400 30px Anton,sans-serif;letter-spacing:.02em}

/* Priser: vanlig text, samma storlek som "Från" */
.price{margin:0 0 6px;color:var(--mut);font-size:1em}.price b{font:inherit;font-weight:700;color:#fff;letter-spacing:0}
.svc .sn{display:flex;flex-direction:column;line-height:1.35}.svc .pr{color:var(--mut);font-size:14px;font-weight:400}

/* Innehåll på tjänstesidor */
.steps{color:#cfcfd3;padding-left:22px;max-width:70ch}.steps li{margin:6px 0}.rel a{color:var(--red);font-weight:700}.rel a:hover{text-decoration:underline}

/* Tjänstegrid utan grå luckor på sista raden, och rubriker i vanliga frågor */
.grid{background:none;border:0;gap:12px}.grid>div,.grid>a{border:1px solid var(--line)}
.fh{font-size:30px;margin:44px 0 16px}.fh:first-of-type{margin-top:32px}

/* Kalender i bokningen */
.cal{max-width:420px;border:1px solid #3a3a40;background:#0b0b0c;padding:14px 14px 12px}
.cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cal-h b{font-weight:700;font-size:17px}
.cal-n{background:none;border:1px solid #3a3a40;color:#fff;width:40px;height:40px;font-size:18px;cursor:pointer}.cal-n:disabled{opacity:.3;cursor:default}.cal-n:enabled:hover{border-color:var(--red)}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-w{font-size:13px;color:var(--mut);padding:6px 0}
.day{aspect-ratio:1;min-height:40px;background:none;border:1px solid transparent;color:#fff;font:600 16px "Open Sans",sans-serif;cursor:pointer}
.day:disabled{color:#4a4a50;font-weight:400;cursor:default}.day:enabled:hover{border-color:var(--red)}.day.sel{background:var(--red);border-color:var(--red)}
.day.today{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:5px}
.day:focus-visible,.cal-n:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.cal-sel{margin:10px 0 0;color:var(--mut);font-size:15px;min-height:22px}.cal-sel b{color:#fff}

/* Mobil: knapparna i nedre fältet får aldrig bli bredare än skärmen */
@media(max-width:860px){.mbar{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.mbar .btn{padding:12px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}}

/* Mobil: rättningar efter test i riktig webbläsare */
.lang2{display:none}.lang[hidden]{display:none!important}.hero{padding-left:20px;padding-right:20px}
@media(max-width:860px){
 .hero{padding-top:28px;padding-bottom:40px;gap:28px}
 .ph{order:0;max-height:none}.ph img{height:auto;max-height:300px;width:100%;object-fit:cover}
 .top{display:none}.lang2{display:inline-block;flex:0 0 auto}
 footer a{padding:9px 0}
 body.no-mbar{padding-bottom:0}
}
.no-mbar .mbar{display:none}

/* Smalare sidhuvud på mobil */
.btn .shl{display:none}
@media(max-width:860px){header .w{padding:0 12px;gap:8px}.logo{font-size:18px;gap:8px;white-space:nowrap}.logo img{width:34px;height:auto}header .btn{padding:11px 12px;font-size:15px;white-space:nowrap}header .btn .lg{display:none}header .btn .shl{display:inline}.lang{padding:3px 8px}}
@media(max-width:380px){.logo{font-size:15px}.logo img{width:28px}header .btn{padding:10px 9px;font-size:14px}.lang{padding:3px 6px;font-size:11px}}

/* Smala skärmar: långa ord och flikar ska aldrig bli bredare än skärmen */
.tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.tabs button{overflow-wrap:anywhere}.tabs .shl{display:none}
h1,h2,h3{overflow-wrap:break-word}
@media(max-width:560px){.tabs .lg{display:none}.tabs .shl{display:inline}.pt,.t,h1.pt,.bk h1,h2{font-size:clamp(28px,8.6vw,48px)}}

/* Kopiera-ruta om ring- eller mejlprogram inte öppnas */
.toast{position:fixed;left:12px;right:12px;bottom:92px;max-width:520px;margin:0 auto;background:#1b1b1d;border:1px solid var(--red);padding:12px 14px;z-index:60;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:15px}
.toast span{flex:1 1 auto}.toast b{color:#fff;margin-left:6px;user-select:all}
.toast button{background:var(--red);color:#fff;border:0;padding:9px 14px;font:700 14px "Open Sans",sans-serif;cursor:pointer}.toast .tx{background:none;border:1px solid #3a3a40;padding:7px 12px;font-size:18px;line-height:1}
@media(min-width:861px){.toast{bottom:20px}}
.toast{flex-wrap:nowrap;gap:8px;padding:10px 12px}.toast span{min-width:0;font-size:14px}.toast button{padding:9px 11px;flex:0 0 auto}.toast .tx{padding:6px 10px}

.hint{display:block;margin-top:6px;color:var(--mut);font-size:13px}.mailnote{color:#fff;margin:6px 0 14px}

/* Omdömen från Google */
.rev{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rv{margin:0;background:var(--panel);border:1px solid var(--line);padding:22px}
.rv .st{color:#f5b301;letter-spacing:3px;font-size:18px}.rv blockquote{margin:12px 0 14px;color:#e6e6e8;font-size:16px;line-height:1.55}.rv figcaption{color:var(--mut);font-size:14px}
.revmore{margin:20px 0 0}.revmore a{color:var(--red);font-weight:700}.revmore a:hover{text-decoration:underline}.revmore b{color:#fff}
@media(max-width:860px){.rev{grid-template-columns:1fr}}
