/* Lesbarhet og responsiv plassering. */
.hero-foot{font-size:16px;gap:8px 20px;line-height:1.6}
.hero-foot span{display:inline-flex;align-items:center;gap:8px}
.hero-foot span:before,.hero-foot span+span:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor;flex-shrink:0;margin:0;display:inline-block}
.hero .lead{font-size:18px;max-width:460px}
.hero .eyebrow{letter-spacing:.08em}
.site-header nav{font-size:16px;gap:23px}
.button,.hero-actions .button,.product-copy .button,.automation-copy .button,.dialog-button-group .button,.presentation-controls .button{font-size:16px}
.text-link,.hero-actions .text-link,.action-link,.showroom-note .text-link,.visit .text-link{font-size:16px}
.service-options p,.product-copy>p:not(.eyebrow),.product-copy ul,.process-list p,.automation-copy p:not(.eyebrow),.portal-grid>div>p:not(.eyebrow),.showroom-note p,.service-note p,.visit{font-size:16px}
.hero-actions .button{gap:16px}
.entry-links>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px}
.entry-number{grid-column:1/-1}
.entry-links small{font-size:15px;line-height:1.55}
.entry-links strong{font-size:19px;line-height:1.4}
.service-note{grid-template-columns:1fr 1.6fr 1fr}
.service-note>span,.eyebrow,.portal-grid .eyebrow{font-size:14px;line-height:1.6}
.preview-bar{flex-wrap:wrap;letter-spacing:.04em;line-height:1.5}
.history-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px}
.history-row strong{font-size:16px;line-height:1.5}
.history-row small{font-size:14px;line-height:1.5;margin-top:5px}
.status{align-self:start;font-size:14px;line-height:1.5}
.unit-code{font-size:16px;align-self:start}
.preview-bottom{line-height:1.7}
.portal-preview{min-width:0}
.photo-caption{font-size:14px;letter-spacing:.07em}
.scene-controls button{font-size:15px;line-height:1.4;padding:10px 8px;min-height:46px}
.visual-topline{gap:15px}
.choice-title,.form-legend{font-size:16px}
.choice-description,.field-hint,.form-note,.error-message,.form-field label,.technical-routing,.technical-routing pre{font-size:14px}
.form-field input,.form-field textarea{font-size:16px}
.review-list{font-size:16px}
.contact-progress{font-size:14px;gap:18px;flex-wrap:wrap}
.contact-progress span{font-size:14px;width:28px;height:28px;flex-shrink:0}
.contact-shell>.contact-heading .step-label{padding-right:35px}
.presentation-toolbar{font-size:14px;gap:20px}
.presentation-toolbar .muted{font-size:14px}
.presentation-toolbar button,.chapter-nav button,.presentation-controls .button{font-size:16px}
.chapter-nav{gap:12px 24px}
.presentation-slide .lead{font-size:18px}
.presentation-slide ul,.meeting-question,.meeting-row,.meeting-visual .unit-description{font-size:16px}
.meeting-row span:first-child{font-size:14px}
.meeting-row p{min-width:0}
.presentation-slide figcaption,.meeting-visual>p,.presentation-controls span{font-size:14px}
#presentation-content{flex:1 0 auto;min-width:0}
.presentation-slide{height:auto;min-height:0}
.presentation-controls{flex-shrink:0}
.prototype-strip{flex-wrap:wrap;row-gap:0}
.prototype-note,.prototype-strip #draft-label,.variant-switch{font-size:14px;letter-spacing:.025em}
.variant-switch{margin-left:auto}
@media(max-width:1100px){
  .site-header{height:78px;padding-inline:24px}
  .menu-toggle{display:flex;align-items:center;gap:20px;background:none;font-size:16px;padding:12px 0}
  .site-header nav{display:none;position:absolute;top:78px;inset-inline:0;background:var(--paper);padding:18px 24px 25px;box-shadow:0 15px 20px #18181815;border-bottom:1px solid var(--line)}
  .site-header nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;font-size:16px}
  .site-header nav .login-button{justify-content:space-between}
  .prototype-note{display:none}
  .service-note{grid-template-columns:1fr 2fr}
  .service-note>a{grid-column:2;text-align:left}
  .hero-foot{font-size:16px;flex-direction:column;align-items:flex-start;gap:5px}
  .business-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
  .business-copy .lead{font-size:17px}
  .portal-grid{grid-template-columns:1fr}
  .portal-preview{max-width:600px;width:100%;margin:15px auto 0}
}
@media(max-width:820px){
  .hero .lead{font-size:17px}
  .hero .eyebrow{font-size:14px}
  .product-panel{grid-template-columns:1fr}
  .product-panel>img{height:360px;aspect-ratio:auto}
  .business-grid,.automation-section{grid-template-columns:1fr}
  .business-image{min-height:420px}
  .automation-visual{order:2}
  .scene-controls{flex-direction:row}
  .presentation-slide{grid-template-columns:1fr;gap:30px}
  .presentation-slide figure>img{height:300px}
  .presentation-toolbar .muted{display:none}
}
@media(max-width:580px){
  .prototype-strip{justify-content:center;padding-inline:12px}
  .prototype-strip #draft-label{width:100%;text-align:center;padding-top:8px}
  .variant-switch{margin-inline:auto;font-size:14px}
  .variant-switch a{padding-inline:15px}
  .hero-copy{padding-top:32px}
  .hero .eyebrow{font-size:14px;gap:8px;line-height:1.5}
  .hero-actions .button{padding-inline:17px}
  .hero-foot{gap:5px;margin-top:6px}
  .service-note{display:flex}
  .product-tabs{display:grid;grid-template-columns:1fr;gap:0;border-bottom:0}
  .product-tabs button{font-size:16px;text-align:left;min-height:50px;padding:12px 15px;border:1px solid var(--line);border-bottom-width:3px;white-space:normal}
  .product-tabs button[aria-selected=true]{font-weight:650;background:var(--sand)}
  .product-panel>img{height:290px}
  .history-row{grid-template-columns:46px minmax(0,1fr);gap:6px 12px}
  .history-row .unit-code{grid-row:1/3}
  .history-row .status{grid-column:2;justify-self:start;margin:0}
  .preview-bar>span:last-child{margin-left:0;width:100%;padding-left:14px}
  .portal-preview{padding:18px}
  .contact-progress{gap:9px;font-size:14px}
  .contact-progress li{gap:4px}
  .contact-progress span{width:24px;height:24px}
  .contact-shell{padding-inline:20px}
  .dialog-button-group .button{width:100%}
  .meeting-row{align-items:flex-start;flex-wrap:wrap;gap:5px 16px}
  .presentation-controls{gap:12px}
  .presentation-controls .button{font-size:16px;padding:10px 12px}
}
@media(max-height:800px) and (min-width:821px){
  .presentation-slide{align-items:start}
  .presentation-controls{position:sticky;bottom:-20px;background:var(--paper);padding-bottom:16px}
}
