/* A warmer, more colourful second direction. */
:root{--paper:#f5f1e8;--ink:#233b2e;--green:#233f30;--muted:#626d60;--line:#d5d7ca;--accent:#e5bd71}
.brand-dot,.small-dot{color:#8d6631}
.header-inner{height:90px}
.header-contact{border-left:0;background:var(--green);color:var(--paper);padding:12px 19px;gap:22px}
.hero{position:relative;grid-template-columns:1fr 1.03fr;gap:0;padding:0;margin-top:32px;margin-bottom:0;background:var(--green);color:var(--paper);align-items:stretch}
.hero-copy{padding:48px 42px 40px;align-self:center}
.hero .location{color:#e1e8d7;font-size:10px}
.location-dot{background:#e5bd71;box-shadow:0 0 0 4px #496142}
.hero h1{font-size:clamp(60px,6.8vw,98px);margin-top:30px;letter-spacing:-.069em}
.hero h1 em{color:#e6c389}
.hero-description{color:#e1e7db;margin-top:24px;font-size:15px;line-height:1.7}
.button-dark{background:#e5bd71;color:#233b2e;margin-top:26px;font-weight:600}
.button-dark:hover{background:#f1d39c;color:#233b2e}
.hero-contacts{display:grid;grid-template-columns:1fr 1fr;gap:22px;border-top:1px solid #607359;margin-top:36px;padding-top:21px;max-width:365px}
.hero-contacts a{display:block;padding-block:3px;min-height:48px}
.hero-contacts a>span{display:block;font-size:8px;letter-spacing:.15em;color:#c8d6bb}
.hero-contacts strong{font-size:12px;display:flex;align-items:center;gap:17px;margin-top:7px;font-weight:400}
.hero-contacts svg{width:14px;height:14px;color:#e5bd71;transition:transform .2s}
.hero-contacts a:hover svg{transform:translate(2px,-2px)}
.hero-figure{position:relative;align-self:stretch;display:flex;min-width:0}
.hero-image-frame{height:auto;min-height:620px;max-height:none;width:100%;flex:1}
.hero-image-frame picture,.hero-image-frame img{position:absolute;inset:0;width:100%;height:100%}
.hero-image-frame img{object-position:53% 50%}
.image-index{bottom:48px;left:22px;background:#233b2ee8;padding:8px 10px;font-size:8px;text-shadow:none}
.hero-figure figcaption{position:absolute;bottom:0;left:0;right:0;padding:10px 16px;margin:0;color:#f5f1e8;background:#172b22;font-size:9px;z-index:1}
.expertise{border-top:0;padding-top:76px;padding-bottom:76px}
.section-intro{margin-bottom:38px;gap:48px;grid-template-columns:1fr 1.03fr}
.section-note>p:last-child{font-size:13px;line-height:1.8;color:var(--muted);margin-top:20px}
.section-intro .eyebrow{margin-top:8px}
.muted{color:#617055}
.expertise-list{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.expertise-row{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:30px 36px 27px;border:0;overflow:hidden;min-height:312px;transition:transform .3s var(--ease),box-shadow .3s}
.expertise-row:last-child{border:0}
.expertise-el{background:#dce4d0}
.expertise-bygg{background:#ecdbc0}
.expertise-row .row-number{padding:0;font-size:9px;letter-spacing:.14em;color:#506247;align-self:auto}
.expertise-main{margin-top:29px;position:relative}
.expertise-main h3{font-size:55px}
.expertise-main p{font-size:12px;color:#4c6046;margin-top:7px}
.expertise-description{display:block;font-size:13px;line-height:1.7;color:#46583f;margin-top:20px;position:relative}
.expertise-bygg .row-number,.expertise-bygg .expertise-main p,.expertise-bygg .expertise-description{color:#665037}
.row-action{width:100%;justify-content:space-between;padding-top:20px;margin-top:22px;border-top:1px solid #b5c3a8;font-size:12px;position:relative}
.expertise-bygg .row-action{border-color:#c9b58e}
.row-action>span:first-child{display:block}
.expertise-row .round-arrow{background:var(--green);color:#f5f1e8;border-color:var(--green);width:36px;height:36px}
.expertise-row:hover{padding-left:36px;transform:translateY(-4px);box-shadow:0 12px 28px #233b2e10}
.expertise-row:hover .round-arrow{background:#e5bd71;border-color:#e5bd71;color:var(--ink);transform:rotate(45deg)}
.trade-symbol{position:absolute;right:32px;top:33px;width:93px;height:93px;stroke-width:1.05;color:#718364;opacity:.8}
.expertise-bygg .trade-symbol{color:#98784c}
.about{background:#d4ae6d;color:#233b2e}
.about-inner{padding-block:72px 78px;gap:80px}
.about .tiny-index{color:#49583e}
.about h2{margin-top:28px}
.about h2 em{color:#3d593e}
.about-aside{max-width:345px}
.heritage-marks{gap:22px;margin-bottom:27px}
.heritage-marks img{width:94px;opacity:1;box-shadow:0 4px 16px #233b2e12}
.about-aside>p{color:#2d432e;font-size:15px}
.about-signature{color:#344b32;letter-spacing:.13em}
.contact{padding-top:79px;padding-bottom:76px}
.contact-intro{margin-bottom:49px}
.contact h2 em{color:#687b50}
.person{border-top:3px solid #a9b997}
.person+.person{border-top-color:#c8a462}
.person-top .eyebrow{background:#dce4d0;padding:6px 10px;color:#354b2d;letter-spacing:.1em}
.person+.person .person-top .eyebrow{background:#ecdbc0;color:#624b2d}
.person-index{color:#627356}
.phone-link:hover{color:#6c522a}
.phone-link:focus-visible,.email-link:focus-visible{outline-offset:3px}
a:focus-visible,button:focus-visible{outline-color:#9b6c25}
.hero a:focus-visible{outline-color:#f2d39a}
@media(min-width:1600px){.hero{padding:0;gap:0;margin-top:38px}.hero-image-frame{min-height:660px}.hero h1{font-size:100px}}
@media(max-width:1100px){.hero{grid-template-columns:1fr 1.03fr;gap:0}.hero-copy{padding:35px 28px}.hero h1{font-size:clamp(58px,6.8vw,75px)}.hero-image-frame{min-height:585px}.hero .location{font-size:8px}.hero-contacts{gap:15px;margin-top:28px}.expertise-row{padding-inline:28px}.expertise-row:hover{padding-left:28px}.trade-symbol{right:25px;width:78px;height:78px}.about-inner{gap:50px}}
@media(max-width:760px){.header-inner{height:80px;gap:14px}.header-contact{padding:10px 12px;font-size:11px;gap:8px}.hero{margin-top:20px;grid-template-columns:1fr;gap:0}.hero-copy{padding:32px 26px 29px}.hero .location{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(54px,11.8vw,82px);margin-top:26px;line-height:1.03}.hero-description{font-size:13px;margin-top:21px}.button-dark{margin-top:23px;min-height:52px}.hero-contacts{margin-top:27px;padding-top:17px;max-width:none}.hero-contacts strong{font-size:11px}.hero-image-frame{height:340px;min-height:0;flex:auto}.hero-figure figcaption{font-size:8px;padding:9px 12px}.image-index{bottom:46px;left:15px;font-size:7px}.expertise{padding-top:52px;padding-bottom:52px}.section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:29px}.section-intro .eyebrow{margin-top:0}.section-note>p:last-child{font-size:12px;margin-top:13px}.expertise-list{grid-template-columns:1fr;gap:16px}.expertise-row{padding:25px 27px 23px;min-height:285px}.expertise-row:hover{padding-left:27px}.expertise-main{margin-top:25px}.expertise-main h3{font-size:48px}.expertise-description{font-size:12px;margin-top:17px}.row-action{margin-top:20px;padding-top:16px;font-size:11px}.trade-symbol{width:86px;height:86px;top:31px;right:28px}.about-inner{padding-block:52px 55px;gap:34px}.about h2{font-size:41px;margin-top:25px}.about-aside{max-width:440px;grid-template-columns:1fr auto;gap:0 22px}.heritage-marks{gap:13px;margin:0}.heritage-marks img{width:58px}.about-aside>p{font-size:13px}.about-signature{font-size:7px;margin-top:17px}.contact{padding-top:54px;padding-bottom:51px}.contact-intro{margin-bottom:36px}.contact h2{font-size:56px}.person{padding-top:23px}.person+.person{padding-top:23px}.person-top .eyebrow{font-size:9px}.person-top{margin-bottom:24px}.person h3{font-size:42px}}
@media(max-width:374px){.header-inner{gap:7px}.header-contact{font-size:10px;padding:10px}.hero-copy{padding:29px 22px 25px}.hero h1{font-size:47px}.hero .location{font-size:7px}.hero-image-frame{height:290px}.about h2{font-size:36px}.about-aside{column-gap:16px}.heritage-marks img{width:49px}.trade-symbol{width:75px;height:75px;right:23px}}
@media(prefers-reduced-motion:reduce){.expertise-row:hover{transform:none}.hero-contacts a:hover svg{transform:none}}
