/* Shared Nordlane type scale: identical in classic theme and portal package.
   Supporting-information exceptions are maintained below.
   No colour, background, spacing, visibility or control-appearance changes. */
@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url("fonts/Manrope-Regular.ttf") format("truetype")}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/SpaceGrotesk-Regular.ttf") format("truetype")}
body.nl-typography{--nl-font:Manrope,Arial,sans-serif;--nl-heading-font:"Space Grotesk",Manrope,Arial,sans-serif;--nl-text:16px;--nl-leading:1.7;font-family:var(--nl-font)!important;font-size:var(--nl-text)!important;font-weight:400!important;line-height:var(--nl-leading);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.nl-typography :where(*:not(svg):not(svg *)){font-family:var(--nl-font)!important;font-weight:400!important;font-synthesis:none}
body.nl-typography :is(h1,h2),body.nl-typography :is(h1,h2) *{font-family:var(--nl-heading-font)!important}
body.nl-typography :is(p,li,small,label,input,select,textarea,button,summary,blockquote,figcaption,dt,dd){font-size:var(--nl-text)!important;line-height:var(--nl-leading)!important}
body.nl-typography :is(p,li,small,label,blockquote,figcaption,dt,dd){letter-spacing:normal!important;text-transform:none!important}
body.nl-typography :is(h1,h2,h3,h4,h5,h6){font-weight:400!important;line-height:1.2!important;overflow-wrap:break-word}
body.nl-typography h1{font-size:clamp(32px,4.5vw,60px)!important;letter-spacing:-.035em!important}
body.nl-typography h2{font-size:clamp(26px,3.2vw,40px)!important;letter-spacing:-.025em!important}
body.nl-typography h3{font-size:24px!important;letter-spacing:-.015em!important}
body.nl-typography :is(h4,h5,h6){font-size:20px!important;letter-spacing:normal!important}
body.nl-typography :is(strong,b){font-weight:400!important}
body.nl-typography :is(button,input,select,textarea){letter-spacing:normal!important;text-transform:none!important}
body.nl-typography :is(.nl-btn,.nls-button,.nav-button,.portal-button,.contact-button,.whatsapp-button,.nls-card-link){font-size:16px!important;font-weight:400!important;line-height:1.5!important;letter-spacing:normal!important;text-transform:none!important}
body.nl-typography :is(.nl-kicker,.nrf-eyebrow,.nls-eyebrow,.eyebrow,.section-label,.form-card-label,.nl-dash-side-label){font-size:14px!important;font-weight:400!important;line-height:1.5!important;letter-spacing:1px!important}
body.nl-typography :is(.nl-site-header,.nl-dash-side,.nl-dash-user,.nl-view-site,.nl-tabs,.footer-links,.nls-footer){font-size:14px!important;font-weight:400!important;line-height:1.5!important}
body.nl-typography .nl-site-header :is(a,summary){font-size:14px!important;font-weight:400!important}
body.nl-typography .nl-site-header .nl-site-desktop>a,body.nl-typography .nl-site-header .nl-site-services>a,body.nl-typography .nl-site-header .nl-site-submenu a{font-family:var(--nl-font)!important}
body.nl-typography .nl-site-header .nl-site-logo{font-size:22px!important;font-weight:400!important;line-height:1.3!important}
body.nl-typography :is(.nl-site-logo,.nl-dash-logo,.logo,.footer-logo){font-size:22px!important;font-weight:400!important;line-height:1.3!important}
body.nl-typography .nl-dashboard .nl-request-flow .nrf-choice .nrf-choice-copy :is(strong,small),body.nl-typography .nl-dashboard .nl-request-flow .nrf-choice:has(input:checked) .nrf-choice-copy :is(strong,small){font-size:16px!important;font-weight:400!important;line-height:1.6!important}
body.nl-typography .nl-dashboard .nl-request-flow .nrf-checkbox>span{font-size:16px!important;font-weight:400!important;line-height:1.7!important}
body.nl-typography .nl-dashboard .nl-request-flow .nrf-intro{font-size:16px!important}
body.nl-typography .nl-dashboard .nl-request-flow .nrf-steps li{font-size:14px!important;font-weight:400!important;line-height:1.5!important}
body.nl-typography .nl-dashboard .nl-request-flow .nrf-steps li[aria-current=step]{font-weight:400!important}
body.nl-typography :is(.nl-dash-files,.nl-profile-item,.nl-profile-stats,.nl-vehicle-switch,.nl-step-line,.nl-latest-update,.nl-dash-help,.nl-dash-progress,.nl-quote-copy,.nl-dash-panel-head,.nrf-start-footer,.nrf-timing,.contact-details,.dashboard-row,.dashboard-status,.nls-response){font-size:16px!important;line-height:1.7!important}
body.nl-typography .nl-dashboard :is(.nl-dash-files a,.nl-profile-item span,.nl-profile-stats>span,.nl-vehicle-switch span,.nl-step-line strong,.nl-step-line span,.nl-dash-panel-head>span,.nl-dash-help strong,.nl-dash-help a){font-size:16px!important;font-weight:400!important;line-height:1.7!important}
body.nl-typography .nl-dashboard .nl-empty :is(h2){font-size:clamp(24px,2.6vw,32px)!important}
body.nl-typography .nl-dashboard .nl-request-flow :is(.nrf-choice,.nrf-vehicle){height:auto}
body.nl-typography .nl-dashboard .nl-request-flow :is(input,select){line-height:1.5!important}
/* 1.3.13: descriptions/messages 13px; status badges remain 10px. */
body.nl-typography .nl-dashboard .nl-request-flow .nrf-start-footer :is(p,small),
body.nl-typography .nl-dashboard .nl-request-flow .nrf-timing,
body.nl-typography .nl-dashboard .nl-request-flow .nrf-message,
body.nl-typography .nl-dashboard .nl-request-flow .nrf-message :is(p,span,strong),
body.nl-typography .nl-dashboard .nl-request-flow .nrf-confirm,
body.nl-typography .nl-dashboard .nl-request-flow .nrf-confirm strong,
body.nl-typography .nl-dashboard .nl-request-flow .nrf-choice .nrf-choice-copy small,
body.nl-typography .nl-dashboard .nl-request-flow .nrf-choice:has(input:checked) .nrf-choice-copy small,
body.nl-typography .nl-dashboard .nl-latest-update,
body.nl-typography .nl-dashboard .nl-latest-update :is(span,p),
body.nl-typography .nl-dashboard .nl-action-panel p,
body.nl-typography .nl-dashboard .nl-dash-panel-head>span,
body.nl-typography .nl-dashboard .nl-hint,
body.nl-typography .nl-dashboard .nl-notice,
body.nl-typography .nl-dashboard .nl-dash-files small,
body.nl-typography .nl-dashboard .nl-step-line :is(strong,span),
body.nl-typography .nls-page .nls-service-card p,
body.nl-typography .nls-page .nls-response,
body.nl-typography .nls-page .nls-response-note,
body.nl-typography .nls-page .nls-response-note :is(strong,span,p),
body.nl-typography .nls-page .nls-form-hint,
body.nl-typography .nls-page .nls-submit p,
body.nl-typography .nls-page .nls-notice:not(.nls-error),
body.nl-typography .nls-page .nls-notice:not(.nls-error) strong,
body.nl-typography .form-message.success,
body.nl-typography .form-message.success strong,
body.nl-typography .form-submit-row p,
body.nl-typography .dashboard-row{font-size:13px!important;line-height:1.65!important;font-weight:400!important;letter-spacing:normal!important}
body.nl-typography .nl-dashboard .nl-live-status,
body.nl-typography .nl-dashboard .nl-status,
body.nl-typography .dashboard-status{font-size:10px!important;line-height:1.65!important;font-weight:400!important;letter-spacing:normal!important}
body.nl-typography .nl-dashboard .nl-dash-panel-head .nl-live-status{font-size:10px!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.nl-typography .nl-dashboard .nl-live-status{color:#fff!important;-webkit-text-fill-color:#fff!important}
@media(max-width:900px){body.nl-typography h1{font-size:40px!important}body.nl-typography h2{font-size:30px!important}}
@media(max-width:640px){body.nl-typography h1{font-size:32px!important}body.nl-typography h2{font-size:26px!important}body.nl-typography h3{font-size:22px!important}body.nl-typography .nl-site-header .nl-site-logo,body.nl-typography .nl-dash-logo{font-size:19px!important}body.nl-typography .nl-dashboard .nl-request-flow label.nrf-choice{min-height:100px}body.nl-typography .nl-dashboard .nl-request-flow .nrf-steps{gap:6px}body.nl-typography .nl-dashboard .nl-request-flow .nrf-steps li{font-size:12px!important}body.nl-typography .nl-site-header .nl-site-actions a{padding:10px;font-size:14px!important}}
