/* Layout B – Roadbook/tidslinje. Lastes etter style-13.css. */
@font-face{font-family:"Montserrat";src:url("fonts/montserrat-var.woff") format("woff");font-weight:100 900;font-style:normal;font-display:swap}
:root{--rb-navy:#001a3d;--rb-navy2:#0a2a57;--rb-yel:#ffd400;--rb-sky:#cce6ff;--rb-panel:rgba(0,18,45,.86);--rb-line:rgba(204,230,255,.25);--rb-bar:58px}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--rb-bar) + 8px)}
body.layout-b{overflow-x:clip}
.layout-b main{max-width:1240px}
.layout-b a:focus-visible,.layout-b summary:focus-visible,.layout-b button:focus-visible,.layout-b [tabindex]:focus-visible{outline:3px solid var(--rb-yel);outline-offset:3px;border-radius:4px}
/* Header-meny: kompakt, vannrett rulling på mobil */
.rb-mainnav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 2px;padding:6px 10px}
.rb-mainnav a{margin:0 6px;font-size:.9rem}
@media(max-width:700px){.rb-mainnav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.rb-mainnav a{white-space:nowrap}}
/* Sticky dagvelger */
.rb-bar{position:sticky;top:0;z-index:50;background:rgba(0,20,50,.96);border-bottom:2px solid var(--rb-yel);box-shadow:0 4px 14px rgba(0,0,0,.35);margin:0;text-align:left}
.rb-bar-in{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:10px;min-height:var(--rb-bar);padding:0 14px}
.rb-brand{font-family:Montserrat,Arial,sans-serif;font-weight:800;color:#fff!important;text-decoration:none;white-space:nowrap;margin:0!important}
.rb-brand span{color:var(--rb-yel)}
.rb-chips{display:flex;gap:6px;overflow-x:auto;flex:1 1 auto;min-width:0;scrollbar-width:none;padding:6px 2px}
.rb-chips::-webkit-scrollbar{display:none}
.rb-chip{flex:0 0 auto;display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;margin:0!important;border-radius:10px;background:var(--rb-navy2);color:#fff!important;text-decoration:none;font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:.95rem;border:1px solid var(--rb-line)}
.rb-chip-txt{font-size:.8rem;font-weight:700}
.rb-chip:hover{border-color:var(--rb-yel)}
.rb-chip.is-on,.rb-chip[aria-current]{background:var(--rb-yel);color:var(--rb-navy)!important;border-color:var(--rb-yel)}
.rb-bar .language-switch{margin:0!important;white-space:nowrap;font-size:.85rem}
@media(max-width:520px){.rb-brand{display:none}.rb-bar .language-switch span:not(.language-flag){display:none}}
/* Dagseksjon */
.rb-day{margin:56px 0 0;padding:0;border:0}
.rb-hero{box-sizing:border-box;padding:0;position:relative;width:100vw;margin-left:calc(50% - 50vw);min-height:40vh;display:flex;align-items:flex-end;background:linear-gradient(120deg,var(--rb-navy),var(--rb-navy2));overflow:hidden;border-top:4px solid var(--rb-yel)}
.rb-hero picture,.rb-hero-img{position:absolute;inset:0;width:100%;height:100%}
.rb-hero-img{object-fit:cover}
.rb-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,15,40,.05) 25%,rgba(0,15,40,.88));pointer-events:none}
.rb-hero-in{position:relative;z-index:2;width:100%;max-width:1240px;margin:0 auto;padding:24px 20px 34px;display:flex;align-items:flex-end;gap:18px}
.rb-big{font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(4.5rem,13vw,9rem);line-height:.8;color:var(--rb-yel);letter-spacing:-.04em;text-shadow:0 4px 18px rgba(0,0,0,.4)}
.rb-kick{display:inline-block;margin:0 0 8px;background:var(--rb-yel);color:var(--rb-navy);font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.06em;padding:3px 10px;border-radius:4px;text-transform:uppercase}
.rb-hero h2{border:0;margin:0 0 8px;padding:0;font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(1.25rem,3.2vw,2.3rem);line-height:1.15;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6);max-width:30ch}
.rb-passes{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:6px 0 0;padding:0}
.rb-passes li{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);padding:2px 10px;border-radius:99px;font-size:.78rem;font-weight:600;color:#fff;backdrop-filter:blur(3px)}
.rb-hero-cred{position:absolute;z-index:3;right:8px;bottom:4px;margin:0;font-size:.62rem;color:rgba(255,255,255,.8);max-width:70%;text-align:right;line-height:1.3}
.rb-hero-cred a{color:inherit}
.rb-hero-plain{min-height:auto}
.rb-hero-plain .rb-big{font-size:clamp(3rem,8vw,5rem)}
/* Innhold */
.rb-body{background:var(--rb-panel);border-radius:0 0 16px 16px;padding:22px clamp(14px,2.5vw,28px) 28px;margin:0 calc(-1 * min(20px,3vw))}
.rb-top .day-summary{font-size:1.05rem}
.rb-top .route-facts-grid,.rb-top .optional-facts-grid{margin:14px 0 6px}
.rb-grid{display:grid;gap:22px;margin-top:18px}
.rb-grid>*{min-width:0}
.rb-rail{background:rgba(255,255,255,.06);border:1px solid var(--rb-line);border-radius:14px;padding:14px}
.rb-rail-h{margin:0 0 10px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-sky);border:0}
.rb-tl{list-style:none;margin:0;padding:0 0 0 20px;border-left:3px solid rgba(204,230,255,.45)}
.rb-tl li{position:relative;padding:0 0 12px 8px;display:grid;grid-template-columns:auto 1fr;column-gap:8px;line-height:1.3}
.rb-tl li:before{content:"";position:absolute;left:-28px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--rb-navy);border:3px solid #fff}
.rb-tl li.rb-pass:before{background:var(--rb-yel);border-color:var(--rb-yel)}
.rb-km{grid-row:span 2;font-size:.74rem;font-weight:800;color:var(--rb-yel);white-space:nowrap;min-width:4.6em}
.rb-sted{font-weight:700}
.rb-hoyde{font-size:.78rem;color:var(--rb-sky)}
/* Mobil: tidslinjen blir en kompakt vannrett stripe */
@media(max-width:899px){
 .rb-rail{padding:10px 0 6px;background:none;border:0}
 .rb-rail-h{margin-left:2px}
 .rb-tl{display:flex;overflow-x:auto;gap:0;border-left:0;padding:16px 4px 8px;border-top:3px solid rgba(204,230,255,.45);scroll-snap-type:x proximity}
 .rb-tl li{flex:0 0 auto;display:block;padding:6px 14px 0 0;min-width:96px;scroll-snap-align:start}
 .rb-tl li:before{left:0;top:-24px}
 .rb-km{display:block}
 .rb-sted,.rb-hoyde{display:block}
}
@media(min-width:900px){
 .rb-grid{grid-template-columns:250px minmax(0,1fr)}
 .rb-grid-full{grid-template-columns:1fr}
 .rb-rail{position:sticky;top:calc(var(--rb-bar) + 14px);align-self:start;max-height:calc(100vh - var(--rb-bar) - 28px);overflow:auto}
 .rb-content .route-detail-media{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
 .rb-content .route-detail-media figure{margin:0}
}
.rb-content>*+*{margin-top:20px}
.rb-content .stopp-liste{margin-top:22px}
/* Praktisk – trekkspill */
.rb-praktisk{margin:70px 0 20px;border-top:4px solid var(--rb-yel);background:var(--rb-panel);border-radius:0 0 16px 16px;padding:20px clamp(14px,2.5vw,28px)}
.rb-praktisk>h2{font-family:Montserrat,Arial,sans-serif;font-weight:800}
.rb-pintro{margin:0 0 10px;color:var(--rb-sky);font-size:.9rem}
.rb-acc-item{border-top:1px solid var(--rb-line)}
.rb-acc-item:last-child{border-bottom:1px solid var(--rb-line)}
.rb-acc-item>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 4px;min-height:48px}
.rb-acc-item>summary::-webkit-details-marker{display:none}
.rb-acc-item>summary h3{margin:0;border:0;padding:0;font-family:Montserrat,Arial,sans-serif;font-size:1.15rem;color:#fff}
.rb-acc-item>summary:after{content:"+";font-size:1.6rem;font-weight:700;color:var(--rb-yel);line-height:1}
.rb-acc-item[open]>summary:after{content:"–"}
.rb-acc-body{padding:4px 2px 22px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.rb-top .route-facts-grid,.rb-top .optional-facts-grid{max-width:none;width:100%}
@media(min-width:900px){.rb-top .route-facts-grid,.rb-top .optional-facts-grid{grid-template-columns:repeat(6,1fr)}}

/* ---- Polering B2: header, intro, hele turen ---- */
header.rb-site-header{background:linear-gradient(90deg,#001a3d,#0a2a57)!important;padding:0;border-bottom:1px solid rgba(204,230,255,.18)}
.rb-site-in{max-width:1240px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:14px}
.rb-site-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff!important}
.rb-site-logo{width:56px;height:auto;flex:0 0 auto}
.rb-site-txt{display:flex;flex-direction:column;line-height:1.2}
.rb-site-title{font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(1.05rem,2.6vw,1.45rem);letter-spacing:.02em;text-transform:uppercase}
.rb-site-sub{font-size:.8rem;color:var(--rb-sky)}
.rb-site-sub b{color:var(--rb-yel);font-weight:700}
@media(max-width:520px){.rb-site-logo{width:44px}.rb-site-sub{font-size:.72rem}}
.rb-intro-section{padding-top:18px}
.rb-intro{font-size:1.12rem;max-width:62ch;line-height:1.6}
.rb-car-line{border-left:3px solid var(--rb-yel);padding-left:10px}
/* Hele turen */
.rb-overview{margin:56px 0 0}
.rb-anchor{display:block;position:relative;top:calc(-1 * var(--rb-bar))}
.rb-ov-band{box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);background:linear-gradient(120deg,#001a3d,#0a2a57 60%,#123a73);border-top:4px solid var(--rb-yel);padding:0}
.rb-ov-in{max-width:1240px;margin:0 auto;padding:30px 20px 26px}
.rb-ov-in h2{border:0;margin:0 0 8px;padding:0;font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(1.4rem,3.6vw,2.4rem);color:#fff}
.rb-ov-in p:last-child{margin:0;max-width:62ch;color:#e5f1ff}
.rb-ov-body{background:var(--rb-panel);border-radius:0 0 16px 16px;padding:20px clamp(14px,2.5vw,28px) 26px;margin:0 calc(-1 * min(20px,3vw))}
.rb-ov-map figure,.rb-ov-prof figure{margin:0}
.rb-ov-map img,.rb-ov-prof img{width:100%;height:auto;border-radius:10px;background:#fff}
.rb-hint{margin:10px 0 0;font-size:.82rem;color:var(--rb-sky)}
.rb-dcards{list-style:none;margin:20px 0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.rb-dcard{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;column-gap:10px;height:100%;box-sizing:border-box;padding:12px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid var(--rb-line);color:#fff!important;text-decoration:none;transition:border-color .15s,transform .15s}
.rb-dcard:hover{border-color:var(--rb-yel);transform:translateY(-2px)}
.rb-dnum{grid-row:1/4;font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:2.4rem;line-height:1;color:var(--rb-yel)}
.rb-dlab{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--rb-sky)}
.rb-droute{font-weight:700;font-size:.92rem;line-height:1.25}
.rb-dmeta{font-size:.74rem;color:#d6e6f8;margin-top:3px}
@media(min-width:768px){.rb-dcards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.rb-dcards{grid-template-columns:repeat(6,minmax(0,1fr))}.rb-dcard{grid-template-columns:1fr}.rb-dnum{grid-row:auto;margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){.rb-dcard{transition:none}}
.rb-ov-in h2{display:block}
.rb-ov-in .rb-kick{display:inline-block}
@media(max-width:600px){.rb-intro-section h1{font-size:1.6rem;line-height:1.25}.rb-intro-section .lead{font-size:1.05rem}.rb-intro{font-size:1.02rem}.rb-intro-section .country-flags{font-size:2rem}}
/* B3: hero-oppsett – tall | kolonne (merke over tittel, tittel, pass) */
.rb-hero-in{align-items:flex-end;gap:clamp(12px,2vw,24px)}
.rb-hero-in>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;flex:1 1 auto}
.rb-hero-in .rb-kick{display:inline-block;margin:0;align-self:flex-start}
.rb-hero h2{display:block;margin:0;hyphens:none;-webkit-hyphens:none;overflow-wrap:normal;word-break:normal;max-width:min(100%,46ch);font-size:clamp(1.2rem,2.6vw,2.1rem);line-height:1.18}
.rb-nw{white-space:nowrap}
.rb-passes{margin:0}
.rb-big{flex:0 0 auto}
.rb-hero{min-height:max(40vh,320px)}
.rb-hero-in{padding-bottom:40px}
.rb-hero-cred{bottom:6px;right:10px;padding:2px 6px;background:rgba(0,15,40,.55);border-radius:4px;font-size:.66rem}
@media(max-width:600px){.rb-hero{min-height:300px}.rb-hero-in{flex-direction:column;align-items:flex-start;gap:6px;padding:20px 16px 44px}.rb-big{font-size:4rem}.rb-hero h2{font-size:1.2rem}.rb-hero-cred{max-width:calc(100% - 20px)}}
/* B4: enkel header på én linje */
.rb-site-in{padding:10px 16px;min-height:52px}
.rb-site-brand{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:2px}
.rb-site-dom,.rb-site-title{font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(1.05rem,2.6vw,1.45rem);letter-spacing:.02em;text-transform:uppercase;line-height:1.15}
.rb-site-dom{color:var(--rb-yel);text-transform:none}
.rb-site-title{color:#fff}
@media(max-width:420px){.rb-site-brand{flex-direction:column;align-items:flex-start}}
/* B5: kontakt */
.rb-contact{margin:56px 0 30px;border-top:4px solid var(--rb-yel);background:var(--rb-panel);border-radius:0 0 16px 16px;padding:20px clamp(14px,2.5vw,28px) 24px}
.rb-contact h2{font-family:Montserrat,Arial,sans-serif;font-weight:800;margin-top:0}
.rb-contact-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:14px 0 0}
.rb-btn{display:inline-block;background:var(--rb-yel);color:var(--rb-navy)!important;font-family:Montserrat,Arial,sans-serif;font-weight:800;padding:11px 18px;border-radius:99px;text-decoration:none}
.rb-btn:hover{filter:brightness(1.07)}
.rb-contact-addr{color:var(--rb-sky);font-weight:600;user-select:all}
.rb-foot-contact{text-align:center;margin:0 0 12px}
@media(max-width:899px){.rb-chip-contact{display:none}}
