/* Planbos fristående kundresor. Endast presentation; flöden, samtycke och status behålls. */
@font-face{font-family:Geist;src:url('img/premium-geist.woff2') format('woff2');font-weight:100 900;font-display:swap}
@media screen{
:root{--brand:#246b55;--brand-2:#246b55;--brand-deep:#1a5442;--brand-soft:#e7efeb;--ink:#1d1d1f;--ink-2:#45454a;--muted:#626268;--line:#dedee3;--bg:#fff;--soft:#f5f5f7;--surface:#fff;--hair:#e6e6eb;--hair-strong:#c8c8ce;--underline:#246b5580;--shadow:0 10px 40px -28px #1d1d1f30;--shadow-lg:0 18px 55px -28px #1d1d1f30}
body{background:#fff;background-image:none;font-family:Geist,system-ui,-apple-system,'Segoe UI',sans-serif}
body :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--brand);outline-offset:4px}
h1{font-weight:600;letter-spacing:-.045em;line-height:1.08;text-wrap:balance}
h2,h3{font-weight:600;letter-spacing:-.025em;text-wrap:balance}
button,input{font-family:inherit}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]){min-height:48px;background:#fafafa;border-radius:10px}
input:not([aria-invalid=true]):not(.err):focus-visible{border-color:var(--brand)}
button{touch-action:manipulation}
.btn{min-height:48px;border-radius:999px;box-shadow:none;font-weight:500;justify-content:center}
.btn:hover{box-shadow:none}
.btn.primary,.kort .btn:not(.ljus){background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:none}
.btn.primary:hover,.kort .btn:not(.ljus):hover{background:var(--brand-deep);border-color:var(--brand-deep);box-shadow:none}
.btn.primary::after{display:none}
.btn.ljus{background:#fff;border:1px solid var(--line);color:var(--brand);box-shadow:none}
.btn:disabled{opacity:.65}

/* Kollen: en fråga i taget, med val och återkoppling i centrum. */
.top{min-height:76px;padding:18px 0;border-bottom:1px solid var(--line)}
.top .mark{width:30px;height:30px;border-radius:8px;box-shadow:none}
.top .brand-text{font-size:19px;font-weight:600;letter-spacing:-.035em}
.top .brand-link{gap:8px;min-height:44px}
.top .topnav a,.top .by a{display:inline-flex;align-items:center;min-height:44px}
#intro h1{margin-top:42px;font-size:clamp(34px,5vw,48px);max-width:20em}
#intro .lede{font-size:17px;line-height:1.75;color:var(--muted);max-width:38em}
.card{border-color:#e3e3e8;border-radius:20px;box-shadow:var(--shadow)}
.pad{padding:28px}
.start-kort{margin-top:28px;background:#f5f5f7;box-shadow:none;border-color:#e6e6eb}
.start-fraga{font-weight:600;font-size:21px;line-height:1.4;letter-spacing:-.025em;margin-bottom:20px}
.svar-btn,.pill-btn,.val-btn{min-height:48px;font-weight:500;box-shadow:none}
.svar-btn{border-width:1px;border-color:#d4d4db;background:#fff}
.svar-btn:hover{background:var(--brand-soft)}
.svar-btn.on,.pill-btn.on{background:var(--brand);border-color:var(--brand);color:#fff}
.val-btn[aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand)}
.start-trust{font-size:12px;line-height:1.7;gap:7px 16px;margin-top:18px}
.field>label{font-weight:500;line-height:1.5}
.field-hint,.field-err,.foot-note{line-height:1.65}
.chip{background:var(--soft);border-color:#e6e6eb;font-size:12px}
.info-sec{margin-top:60px}
.info-sec h2{font-size:25px;line-height:1.25;margin-bottom:22px}
.step{padding:22px;border-color:#e3e3e8;border-radius:16px}
.step p,.faqs .a{line-height:1.75}
.faqs details{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:18px 0;margin:0}
.faqs details:first-child{border-top:1px solid var(--line)}
.faqs summary{font-weight:500;min-height:28px;line-height:1.55}
.rel-grid a{padding:20px;border-radius:14px;font-weight:500;line-height:1.5}
.rel-grid a span{line-height:1.65;margin-top:7px}
.stat .v,.kr-ruta b{font-weight:600;letter-spacing:-.035em}
.kval-ok{min-height:44px;line-height:1.65}
.kval-ok input{width:20px;height:20px}

/* Montertävlingen: fokus på gissningen och de egna kontaktuppgifterna. */
header .logo .mark{background:var(--brand);box-shadow:none}
header .event{font-weight:500;font-size:11px;letter-spacing:.08em;color:var(--muted)}
.text h1 .rad+.rad{color:var(--muted)}
.text .lead{line-height:1.65;font-size:18px}
.text .kick{color:var(--muted);font-weight:500;font-size:11px;letter-spacing:.1em}
.text .vinst{padding:20px;border:1px solid #d4e1d9;background:#f1f6f3;border-radius:16px;gap:13px}
.text .vinst b{font-weight:600}
.text .vinst span{font-size:14px;line-height:1.65;margin-top:4px}
.kort{border:1px solid #e3e3e8;border-radius:22px;box-shadow:0 18px 60px -35px #1d1d1f40}
.gissa{box-shadow:none;background:var(--soft);border:1px solid #e6e6eb;border-radius:14px;padding:16px}
.gissa .vad{font-weight:500;line-height:1.45}
.gissa .hur{line-height:1.6}
.tal input{height:58px;font-size:28px;font-weight:500;background:#fff!important}
.falt{margin-top:20px}
.falt label{font-size:14px;font-weight:500;line-height:1.5}
.falt .hjalp{font-size:13px;line-height:1.65}
.godkann{line-height:1.65;font-size:14px;min-height:48px}
.kort .btn{font-size:16px;margin-top:24px;min-height:52px}
.villkor{margin-top:48px}
.villkor summary{font-weight:500;min-height:64px}
.villkor ol{font-size:14px;line-height:1.8;max-width:68ch}
.villkor li+li{margin-top:14px}
.tack p{line-height:1.7}
@media(min-width:900px){main .grid>.text{padding-top:34px}.kort{padding:30px}}
@media(max-width:640px){
.pad{padding:23px}
.top{min-height:70px;gap:8px;padding:13px 0}
.top .by{font-size:11px;max-width:148px;text-align:right;line-height:1.6}
#intro h1{margin-top:30px;font-size:35px}
#intro .lede{font-size:16px;line-height:1.7}
.start-fraga{font-size:20px}
.start-trust{font-size:12px}
.svar-rad{gap:8px}
.svar-btn{padding:14px 8px;font-size:15px}
.step{padding:21px}
.kort{padding:24px 20px}
.text h1{font-size:clamp(36px,8vw,48px)}
.text .lead{font-size:17px}
header .event{max-width:130px;text-align:right;font-size:10px;line-height:1.6}
.gissa{padding:14px}
.godkann{font-size:13px}
.tal .enhet{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.btn,.svar-btn,.pill-btn,.val-btn{transition:none;transform:none!important}}
}
