/* Byggekonsortiet: calm, warm visual layer. The original styles remain for rollback. */
:root{--ink:#242320;--green:#292724;--accent:#a34d2e;--paper:#faf8f5;--muted:#595652}
html{scroll-padding-top:24px}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--paper);color:var(--ink)}
h1,h2,h3,.footer-inner strong{font-family:inherit;letter-spacing:-.035em;font-weight:650}
.container{width:min(100% - 48px,1240px)}
.header{background:#fff;border-bottom:1px solid #e9e4de}
@supports (backdrop-filter:blur(12px)){.header{background:rgba(255,255,255,.9);backdrop-filter:blur(16px)}}
.header-inner{min-height:78px;gap:22px}
.brand{flex:0 0 auto;line-height:1}
.brand img{display:block;width:clamp(192px,21vw,250px);height:auto;aspect-ratio:304/73;object-fit:contain}
.header nav{gap:clamp(12px,1.7vw,25px);font-size:13px;font-weight:600}
.header nav a:not(.nav-contact){padding:8px 0}
.header nav a:hover,.underlink:hover{color:#8e3f25}
.nav-contact,.btn,.service-card,.contact-panel{border-radius:18px}
.nav-contact{background:#8e4129;color:#fff!important;border-radius:999px;padding:11px 18px;white-space:nowrap}
.nav-contact:hover{background:#74331f;color:#fff!important}
.btn{border-radius:999px;transition:background-color .16s ease,transform .12s ease,box-shadow .16s ease}
.btn:active,.nav-contact:active{transform:scale(.975)}
.btn-primary{background:#923f25;color:#fff}
.btn-primary:hover{background:#78331e;color:#fff}
.hero{background:#26221f}
.hero-shade{background:linear-gradient(90deg,rgba(24,22,20,.92) 0%,rgba(24,22,20,.79) 43%,rgba(24,22,20,.16) 100%)}
.hero h1{font-size:clamp(52px,6.4vw,88px);letter-spacing:-.045em;line-height:1.05}
.hero h1 em{color:#f2b792}
.hero .eyebrow,.contact .section-tag,.contact-panel>span:first-child{color:#f5bd9e}
.eyebrow,.section-tag,.card-index,.process li>span{color:#914126}
.intro,.services,.about{background:var(--paper)}
.process{background:#f0ece6}
.contact{background:#25221f}
.contact p{color:#e7e1db}
.contact-panel{border-color:#81766c}
.service-card{overflow:hidden;border:1px solid #e8e2db;transition:transform .2s ease,box-shadow .2s ease}
.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(38,29,20,.09)}
.intro h2,.section-head h2,.process h2,.contact h2{font-size:clamp(38px,4.5vw,62px);line-height:1.1}
.card-copy h3{font-size:clamp(30px,3vw,39px)}
.photo-credits,.image-disclosure-footer{font-size:12px;line-height:1.6}
.photo-credits a,.image-disclosure-footer a{text-decoration:underline;text-underline-offset:2px}
a:focus-visible,button:focus-visible{outline:3px solid #9b452b;outline-offset:4px}
.hero a:focus-visible,.contact a:focus-visible{outline-color:#ffcca9}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;justify-content:center;padding-block:15px}.header nav{justify-content:center;flex-wrap:wrap;gap:8px 18px}.header nav a{white-space:nowrap}}
@media(max-width:600px){.container{width:min(100% - 32px,1240px)}.header-inner{align-items:center;gap:8px;padding-block:12px}.brand img{width:clamp(170px,55vw,225px)}.header nav{gap:4px 14px;font-size:12px}.header nav a:not(.nav-contact){padding:7px 0}.nav-contact{padding:8px 13px}.hero h1{font-size:clamp(43px,11vw,62px)}.intro h2,.section-head h2,.process h2,.contact h2{font-size:clamp(34px,9vw,46px)}.card-copy h3{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.service-card,.nav-contact{transition:none!important;transform:none!important}}
@media(forced-colors:active){.header{background:Canvas}.brand img{forced-color-adjust:auto}a:focus-visible,button:focus-visible{outline:3px solid Highlight}}
