:root{--bg:#F6FAF8;--paper:#fff;--ink:#17302C;--mute:#5B6E6A;--line:#D7E3DF;--teal:#0E6B63;--teal-d:#0A4F49;--mint:#D9F0E8;--mint-d:#BFE3D6;--coral:#C8532F;--coral-bg:#FCEDE7;--sand:#F3EEE2;--r:14px;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans)}
a{color:var(--teal-d)}a:hover{color:var(--teal)}img,svg{max-width:100%}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}.sr{position:absolute;left:-9999px}.skip{position:absolute;left:-9999px;top:0;background:#fff;padding:8px}.skip:focus{left:8px;z-index:10}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em}h1{font-size:clamp(1.8rem,4.4vw,2.7rem);margin:.4em 0 .3em}h2{font-size:1.5rem;margin:2em 0 .6em;padding-top:.2em}h3{font-size:1.15rem;margin:1.4em 0 .4em}
p{margin:.7em 0}.lead{font-size:1.15rem;color:var(--mute);max-width:46em}
/* header */
.hd{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.hd-in{display:flex;align-items:center;gap:20px;height:60px}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--teal-d);font-family:var(--serif);font-size:1.25rem}.logo b{color:var(--ink)}
.nav{display:flex;gap:4px;margin-left:auto}.nav a{text-decoration:none;color:var(--ink);padding:8px 10px;border-radius:8px;font-size:.95rem}.nav a:hover,.nav a[aria-current]{background:var(--mint)}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:8px;width:42px;height:38px;padding:7px 9px;cursor:pointer}.burger span:not(.sr){display:block;height:2px;background:var(--ink);margin:5px 0}
@media(max-width:860px){.burger{display:block}.nav{display:none;position:absolute;left:0;right:0;top:60px;background:var(--paper);flex-direction:column;padding:8px 16px 14px;border-bottom:1px solid var(--line)}.nav.open{display:flex}}
/* hero */
.hero{background:linear-gradient(180deg,var(--mint) 0,var(--bg) 100%);border-bottom:1px solid var(--line)}.hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:32px;padding:36px 0 40px;align-items:start}
.hero h1{margin-top:0}.hero .lead{margin-bottom:1.2em}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-block;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.9rem;text-decoration:none;color:var(--ink)}.chip:hover{border-color:var(--teal)}
@media(max-width:860px){.hero-in{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 0 26px}.hero .lead{font-size:1.05rem}}
/* layout */
.main{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;padding:12px 0 48px}.side{position:sticky;top:76px;align-self:start;font-size:.93rem}.side h3{margin:.2em 0 .5em;font-size:1rem}.side a{display:block;padding:5px 0;text-decoration:none;border-bottom:1px solid var(--line)}.side .box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;margin-bottom:16px}
@media(max-width:860px){.main{grid-template-columns:minmax(0,1fr);gap:20px}.side{position:static}}
article{max-width:46em}article>p,article>ul{max-width:46em}
/* kort / i korthet */
.korthet{background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:var(--r);padding:16px 20px;margin:18px 0}.korthet h2{margin:0 0 .4em;font-size:1.2rem}.korthet .sub{color:var(--mute);font-size:.88rem;margin:0 0 .6em}.korthet ol{margin:0;padding-left:1.2em}.korthet li{margin:.45em 0}
.how{background:var(--sand);border-radius:var(--r);padding:14px 18px;margin:22px 0;font-size:.93rem}.how b{font-family:var(--serif)}
.note{background:var(--coral-bg);border-left:4px solid var(--coral);padding:10px 14px;border-radius:0 var(--r) var(--r) 0;margin:16px 0;font-size:.95rem}
/* tables */
.tbl{overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);margin:14px 0}table{border-collapse:collapse;width:100%;font-size:.93rem}th,td{padding:8px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--mint);font-weight:600;position:sticky;top:0}tr:last-child td{border-bottom:0}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}td.code{font-family:ui-monospace,Menlo,monospace;color:var(--mute);white-space:nowrap}.lo{color:var(--teal);font-weight:600}.hi{color:var(--coral);font-weight:600}.sm{font-size:.85rem;color:var(--mute)}
/* kvitto (calculator) */
.kvitto{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 10px 30px -18px rgba(14,107,99,.35);overflow:hidden}.kvitto .kh{background:var(--teal-d);color:#fff;padding:12px 18px;font-family:var(--serif);font-size:1.1rem;display:flex;justify-content:space-between;align-items:center}.kvitto .kh small{font-family:var(--sans);opacity:.8;font-size:.8rem}.kvitto .kb{padding:16px 18px}
.f{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px}.f.one{grid-template-columns:1fr}label{display:block;font-size:.85rem;color:var(--mute);margin-bottom:3px}input,select{width:100%;font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}input:focus,select:focus{outline:2px solid var(--teal);outline-offset:1px}
@media(max-width:520px){.f{grid-template-columns:1fr}}
.plan{border:1px dashed var(--line);border-radius:10px;padding:8px 10px;margin:8px 0 12px}.plan-row{display:grid;grid-template-columns:minmax(0,1fr) 58px 110px 32px;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.plan-row:last-child{border-bottom:0}.plan-row .nm{font-size:.9rem;line-height:1.3}.plan-row .nm small{display:block;color:var(--mute)}.plan-row button{border:0;background:none;color:var(--coral);font-size:1.2rem;cursor:pointer}.plan-row select,.plan-row input{padding:6px 8px;font-size:.9rem}
.search{position:relative}.sugg{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;max-height:260px;overflow:auto;z-index:4;display:none}.sugg.open{display:block}.sugg button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:8px 10px;font:inherit;font-size:.9rem;cursor:pointer}.sugg button:hover{background:var(--mint)}.sugg button span{color:var(--mute);float:right}
.quick{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.quick button{background:var(--mint);border:1px solid var(--mint-d);border-radius:999px;padding:4px 10px;font:inherit;font-size:.85rem;cursor:pointer}.quick button:hover{background:var(--mint-d)}
.paper{background:var(--sand);border-radius:10px;padding:12px 14px;margin-top:8px;font-variant-numeric:tabular-nums}.paper .k{font-size:.8rem;color:var(--mute);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.line{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dotted #d9d2c0}.line.total{border-bottom:0;border-top:2px solid var(--ink);margin-top:4px;padding-top:8px;font-weight:700;font-size:1.15rem}.line.pay span:last-child{color:var(--coral)}.line.state span:last-child{color:var(--teal)}
.bar{display:flex;height:14px;border-radius:7px;overflow:hidden;margin:10px 0 4px;background:#e6e1d2}.bar i{display:block;height:100%}.bar .p{background:var(--coral)}.bar .s{background:var(--teal)}.bar .a{background:#B88A2E}.legend{display:flex;gap:14px;font-size:.82rem;color:var(--mute);flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}
.khow{font-size:.85rem;color:var(--mute);margin-top:10px}
/* odontogram */
.odo{display:block;max-width:560px;margin:10px auto}.odo .t{fill:#fff;stroke:#9DB7B0;stroke-width:1.2;cursor:pointer;transition:fill .15s}.odo .t.fram{fill:var(--mint)}.odo .t:hover,.odo .t.on{fill:var(--teal);stroke:var(--teal-d)}.odo text{font:10px var(--sans);fill:var(--mute);pointer-events:none}.odo-legend{display:flex;gap:16px;justify-content:center;font-size:.88rem;color:var(--mute);flex-wrap:wrap}.odo-legend i{display:inline-block;width:14px;height:14px;border:1px solid #9DB7B0;border-radius:4px;vertical-align:middle;margin-right:5px;background:#fff}.odo-legend i.m{background:var(--mint)}
.odo-out{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;text-align:center;margin:10px 0}
/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:16px 0}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;text-decoration:none;color:var(--ink);display:block}.card:hover{border-color:var(--teal)}.card h3{margin:0 0 .3em;font-size:1.05rem}.card p{margin:0;color:var(--mute);font-size:.9rem}.card .big{font-family:var(--serif);font-size:1.6rem;color:var(--teal-d);margin:.2em 0}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 16px;margin:8px 0}.faq summary{cursor:pointer;font-weight:600}.faq details p{margin:.5em 0 .2em}
.crumbs{font-size:.85rem;color:var(--mute);margin:14px 0 0}.crumbs a{text-decoration:none}
.steps{counter-reset:s}.steps li{margin:.5em 0}
.ft{background:var(--teal-d);color:#D9EDE8;margin-top:30px}.ft a{color:#fff;text-decoration:none;display:block;padding:3px 0;font-size:.93rem}.ft a:hover{text-decoration:underline}.ft-in{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px;padding:34px 0 20px}.ft h3{color:#fff;margin:0 0 .5em;font-size:1rem}.ft-logo{font-family:var(--serif);font-size:1.3rem;color:#fff}.ft-logo b{color:#BFE3D6}.ft p{font-size:.9rem;margin:.5em 0}.ft-legal{padding:12px 16px 26px;font-size:.82rem;border-top:1px solid rgba(255,255,255,.15)}
@media(max-width:860px){.ft-in{grid-template-columns:1fr 1fr}}@media(max-width:520px){.ft-in{grid-template-columns:1fr}}
.range{display:flex;align-items:center;gap:10px}.range output{min-width:90px;text-align:right;font-weight:600}input[type=range]{padding:0}
.toggle{display:flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.toggle button{flex:1;border:0;background:#fff;padding:8px;font:inherit;cursor:pointer}.toggle button[aria-pressed=true]{background:var(--teal);color:#fff}
@media(max-width:520px){.plan-row{grid-template-columns:minmax(0,1fr) 50px 86px 26px;gap:5px}.plan-row .nm{font-size:.84rem}.kvitto .kb{padding:12px}}
