Clădirea de tip flat-pack: cum ar putea lemnul să modeleze orașele de mâine.

Clădirea de tip flat-pack: cum ar putea lemnul să modeleze orașele de mâine.

Acest cod este un bloc CSS care definește familia de fonturi „Guardian Headline Full" pentru utilizare pe un site web. Include mai multe reguli font-face, fiecare specificând o greutate diferită (light, regular, medium, semibold) și un stil (normal sau italic) al fontului. Fișierele fontului sunt găzduite pe serverul de active al Guardian, iar codul oferă formate de rezervă (WOFF2, WOFF și TTF) pentru a asigura compatibilitatea între diferite browsere. Greutățile fontului variază de la 300 (light) la 600 (semibold), cu versiuni italice corespunzătoare pentru fiecare greutate.Acest text pare a fi cod CSS, nu proză în limbaj natural. Definește stiluri de font și reguli de layout pentru o pagină web. Deoarece este cod tehnic, rescrierea lui în „engleză naturală și fluentă" nu este aplicabilă—este deja într-un format precis și standardizat. Cu toate acestea, pot oferi un rezumat în engleză simplă a ceea ce face:

Codul configurează fonturi personalizate pentru un site web, inclusiv diverse greutăți și stiluri ale fonturilor „Guardian Headline" și „Guardian Titlepiece", încărcându-le din formate de fișiere specifice. De asemenea, definește reguli de layout responsive pentru o coloană de conținut, ajustând marginile și lățimile în funcție de dimensiunea ecranului. De exemplu, pe ecrane mai largi, adaugă margini stânga, iar pentru anumite elemente precum conținutul imersiv sau showcase, ajustează lățimea și poziționarea pentru a se potrivi viewport-ului. Regulile asigură că textul și elementele încorporate rămân într-o lățime lizibilă (în jur de 620 de pixeli) pe majoritatea dispozitivelor, permițând în același timp elementelor mai mari să se extindă pe ecrane mai mari..content__main-column--interactive:before {
border-left: 1px solid #dcdcdc;
z-index: -1;
left: -10px;
}

@media (min-width: 81.25em) {
.content__main-column--interactive:before {
border-left: 1px solid #dcdcdc;
left: -11px;
}
}

.content__main-column--interactive .element-atom {
margin-top: 0;
margin-bottom: 0;
padding-bottom: 12px;
padding-top: 12px;
}

.content__main-column--interactive p + .element-atom {
padding-top: 0;
padding-bottom: 0;
margin-top: 12px;
margin-bottom: 12px;
}

.content__main-column--interactive .element-inline {
max-width: 620px;
}

@media (min-width: 61.25em) {
figure[data-spacefinder-role=inline].element {
max-width: 620px;
}
}

[data-gu-name=media]:has(figure.loop) figure.loop figcaption:not(.hidden) {
z-index: 6;
}

[data-gu-name=media]:has(figure.loop) figure.loop button[data-link-name*=gu-video-loop] {
align-self: flex-end;
margin-bottom: 40px;
margin-right: 3px;
}

[data-gu-name=media]:has(figure.loop) .controls-container div:has(button[data-testid=unmute-icon]),
[data-gu-name=media]:has(figure.loop) .controls-container div:has(button[data-testid=mute-icon]) {
right: 0;
padding-left: 10px;
}

[data-gu-name=media]:has(figure.loop) #caption-button {
z-index: 100;
}

@media (min-width: 61.25em) {
[data-gu-name=media]:has(figure.loop) #caption-button {
bottom: 20px;
}
}

@media (min-width: 46.25em) {
[data-gu-name=media]:has(figure.cinemagraph) .cinemagraph > div {
max-height: unset;
}
}

[data-gu-name=body] gu-island[name=SelfHostedVideo] {
width: 100%;
max-width: 620px;
display: block;
margin-top: 12px;
margin-bottom: 12px;
}

[data-gu-name=body] gu-island[name=SelfHostedVideo] figure.loop,
[data-gu-name=body] gu-island[name=SelfHostedVideo] figure.loop video {
width: 100%;
height: auto;
max-width: 620px;
margin: 0 auto;
}

[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) {
max-width: unset;
margin: 12px 0;
}

[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) figure.loop,
[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) figure.loop video {
max-width: unset;
margin: 0;
}

@media (min-width: 71.25em) {
[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) {
width: 1140px;
margin-left: -180px;
}
[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) figure figcaption {
margin-left: 20px;
}
}

@media (min-width: 81.25em) {
[data-gu-name=body] gu-island[name=SelfHostedVideo]:has(figure.loop.element-video-immersive) {
width: 1300px;
margin-left: -260px;
}
}

:root {
--dateline: #606060;
--headerBorder: #dcdcdc;
--captionText: #999;
--captionBackground: hsla(0, 0%, 7%, .72);
--feature: #c70000;
--new-pillar-colour: var(--primary-pillar, var(--feature));
}

:root:root {
--subheading-text: var(--secondary-pillar);
--pullquote-text: var(--secondary-pillar);
--pullquote-icon: var(--secondary-pillar);
--block-quote-text: var(--article-text);
}

:root:root blockquote {
--block-quote-fill: var(--secondary-pillar);
}

@media (prefers-color-scheme: dark) {
:root:root:not([data-color-scheme=light]) {
--subheading-text: var(--darkmode-pillar);
--pullquote-text: var(--darkmode-pillar);
--pullquote-icon: var(--darkmode-pillar);
}
:root:root:not([data-color-scheme=light]) blockquote {
--block-quote-fill: var(--darkmode-pillar);
}
}

.content__main-column--interactive .element.element-atom,
.element.element-atom {
padding: 0;
}

.content__main-column--interactive .element-atom:first-of-type + p:first-of-type,
.content__main-column--interactive .element-atom:first-of-type + .sign-in-gate + p:first-of-type,
.content__main-column--interactive .element-atom:first-of-type + #sign-in-gate + p:first-of-type,
.content__main-column--interactive .element-atom:first-of-type + .element-atom + p:first-of-type,
.content__main-column--interactive hr:not(.last-horizontal-rule) + p,
.content__main-column--interactive hr:not(.last-horizontal-rule) + .ad-slot-container + p,
#article-body > div .element-atom:first-of-type + p:first-of-type,
#article-body > div .element-atom:first-of-type + .sign-in-gate + p:first-of-type,
#article-body > div .element-atom:first-of-type + #sign-in-gate + p:first-of-type,
#article-body > div .element-atom:first-of-type + .element-atom + p:first-of-type,
#article-body > div hr { ... }Primul paragraf după o regulă orizontală sau un element atom ar trebui să aibă spațiu suplimentar în partea de sus. Aceasta se aplică primului paragraf care urmează oricăruia dintre aceste elemente, fie că vine direct după element, fie după un container de slot publicitar. Aceeași regulă se aplică în diferite secțiuni ale paginii, cum ar fi corpul articolului, conținutul interactiv, comentariile și secțiunile de prezentare.

În plus, prima literă a acelui prim paragraf ar trebui să fie stilizată într-un mod special. Această stilizare se aplică primei litere a paragrafului care vine după o regulă orizontală sau un element atom, fie că este direct după element, fie după un container de slot publicitar. Aceasta se aplică în toate aceleași secțiuni menționate mai sus.[data-gu-name=body] .element-atom:first-of-type+.element-atom+p:first-of-type:first-letter,
[data-gu-name=body] hr:not(.last-horizontal-rule)+p:first-letter,
[data-gu-name=body] hr:not(.last-horizontal-rule)+.ad-slot-container+p:first-letter,
#feature-body .element-atom:first-of-type+p:first-of-type:first-letter,
#feature-body .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,
#feature-body .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,
#feature-body .element-atom:first-of-type+.element-atom+p:first-of-type:first-letter,
#feature-body hr:not(.last-horizontal-rule)+p:first-letter,
#feature-body hr:not(.last-horizontal-rule)+.ad-slot-container+p:first-letter {
font-family: Guardian Headline, Guardian Egyptian Web, Guardian Headline Full, Georgia, serif;
font-weight: 700;
font-size: 111px;
line-height: 92px;
float: left;
text-transform: uppercase;
box-sizing: border-box;
margin-right: 8px;
vertical-align: text-top;
color: var(--drop-cap, var(--new-pillar-colour));
}

.content__main-column--interactive hr+p,
.content__main-column--interactive hr+.ad-slot-container+p,
#article-body>div hr+p,
#article-body>div hr+.ad-slot-container+p,
.content--interactive>div hr+p,
.content--interactive>div hr+.ad-slot-container+p,
#comment-body hr+p,
#comment-body hr+.ad-slot-container+p,
[data-gu-name=body] hr+p,
[data-gu-name=body] hr+.ad-slot-container+p,
#feature-body hr+p,
#feature-body hr+.ad-slot-container+p {
padding-top: 0;
}

.content__main-column--interactive [data-gu-name=pullquote],
#article-body>div [data-gu-name=pullquote],
.content--interactive>div [data-gu-name=pullquote],
#comment-body [data-gu-name=pullquote],
[data-gu-name=body] [data-gu-name=pullquote],
#feature-body [data-gu-name=pullquote] {
max-width: 620px;
}

#maincontent figure.element.element--showcase.element-showcase figcaption,
#feature-article-container figure.element.element--showcase.element-showcase figcaption,
#standard-article-container figure.element.element--showcase.element-showcase figcaption,
#comment-article-container figure.element.element--showcase.element-showcase figcaption {
position: static !important;
width: 100%;
max-width: 620px;
}

@media (min-width: 71.25em) {
#maincontent figure.element.element--showcase.element-showcase figcaption,
#feature-article-container figure.element.element--showcase.element-showcase figcaption,
#standard-article-container figure.element.element--showcase.element-showcase figcaption,
#comment-article-container figure.element.element--showcase.element-showcase figcaption {
position: absolute !important;
max-width: 140px;
}
}

@media (min-width: 81.25em) {
#maincontent figure.element.element--showcase.element-showcase figcaption,
#feature-article-container figure.element.element--showcase.element-showcase figcaption,
#standard-article-container figure.element.element--showcase.element-showcase figcaption,
#comment-article-container figure.element.element--showcase.element-showcase figcaption {
max-width: 220px;
}
}

.element.element--immersive.element-immersive {
width: calc(100vw - var(--scrollbar-width, 0px));
}

@media (max-width: 71.24em) {
.element.element--immersive.element-immersive {
max-width: 978px;
}
.element.element--immersive.element-immersive figcaption {
padding-inline: 10px;
}
}

@media (max-width: 71.24em) and (min-width: 30em) {
.element.element--immersive.element-immersive figcaption {
padding-inline: 20px;
}
}

@media (min-width: 46.25em) and (max-width: 61.24em) {
.element.element--immersive.element-immersive {
max-width: 738px;
}
}

@media (max-width: 46.24em) {
.element.element--immersive.element-immersive {
margin-left: -10px !important;
margin-right: 0 !important;
left: 0;
}
}

@media (max-width: 46.24em) and (min-width: 30em) {
.element.element--immersive.element-immersive {
margin-left: -20px !important;
}
.element.element--immersive.element-immersive figcaption {
padding-inline: 20px;
}
}

@media (min-width: 71.25em) {
[data-gu-name=body] figure.element.element--showcase.element-showcase,
[data-gu-name=body] .content__main-column--interactive figure.element.element--showcase.element-showcase {
margin-left: -160px !important;
}
}

@media (min-width: 81.25em) {
[data-gu-name=body] figure.element.element--showcase.element-showcase,
[data-gu-n[body] .content__main-column--interactive figure.element.element--showcase.element-showcase {
margin-left: -240px !important;
}

.furniture-wrapper {
position: relative;
}

@media (min-width: 61.25em) {
.furniture-wrapper {
display: grid;
grid-column-gap: 20px;
grid-row-gap: 0px;
grid-template-columns: [title-start headline-start meta-start standfirst-start] repeat(5, 1fr) [title-end headline-end meta-end standfirst-end portrait-start] repeat(5, 1fr) [portrait-end];
grid-template-rows: [title-start portrait-start] .25fr [title-end headline-start] 1fr [headline-end standfirst-start] .75fr [standfirst-end meta-start] auto [meta-end portrait-end];
}

.furniture-wrapper #headline > div:first-child,
.furniture-wrapper [data-gu-name="headline"] > div:first-child,
.furniture-wrapper .headline > div:first-child {
border-top: 1px solid var(--headerBorder);
}

.furniture-wrapper #meta,
.furniture-wrapper [data-gu-name="meta"] {
position: relative;
padding-top: 2px;
margin-right: 0;
}

.furniture-wrapper .standfirst .content__standfirst,
.furniture-wrapper #standfirst .content__standfirst,
.furniture-wrapper [data-gu-name="standfirst"] .content__standfirst {
margin-bottom: 4px;
}

.furniture-wrapper .standfirst ul li,
.furniture-wrapper #standfirst ul li,
.furniture-wrapper [data-gu-name="standfirst"] ul li {
font-size: 20px;
}

.furniture-wrapper .standfirst li a,
.furniture-wrapper .standfirst a,
.furniture-wrapper #standfirst li a,
.furniture-wrapper #standfirst a,
.furniture-wrapper [data-gu-name="standfirst"] li a,
.furniture-wrapper [data-gu-name="standfirst"] a {
border-bottom: none;
background-image: none !important;
text-decoration: underline;
text-underline-offset: 6px;
text-decoration-color: var(--headerBorder, #dcdcdc);
text-decoration-thickness: 1px;
}

.furniture-wrapper .standfirst li a:hover,
.furniture-wrapper .standfirst a:hover,
.furniture-wrapper #standfirst li a:hover,
.furniture-wrapper #standfirst a:hover,
.furniture-wrapper [data-gu-name="standfirst"] li a:hover,
.furniture-wrapper [data-gu-name="standfirst"] a:hover {
text-decoration-color: var(--new-pillar-colour);
}

.furniture-wrapper .standfirst p:first-of-type,
.furniture-wrapper #standfirst p:first-of-type,
.furniture-wrapper [data-gu-name="standfirst"] p:first-of-type {
border-top: 1px solid var(--headerBorder);
padding-bottom: 0;
}
}

@media (min-width: 61.25em) and (min-width: 71.25em) {
.furniture-wrapper .standfirst p:first-of-type,
.furniture-wrapper #standfirst p:first-of-type,
.furniture-wrapper [data-gu-name="standfirst"] p:first-of-type {
border-top: unset;
}
}

@media (min-width: 61.25em) {
.furniture-wrapper figure {
margin: 0 0 0 -10px;
}

.furniture-wrapper figure[data-spacefinder-role="inline"].element {
max-width: 630px;
}
}

@media (min-width: 71.25em) {
.furniture-wrapper {
grid-template-columns: [title-start headline-start meta-start] repeat(2, 1fr) [meta-end standfirst-start] repeat(5, 1fr) [title-end headline-end standfirst-end portrait-start] repeat(7, 1fr) [portrait-end];
grid-template-rows: [title-start portrait-start] 80px [title-end headline-start] auto [headline-end standfirst-start meta-start] auto [standfirst-end meta-end portrait-end];
}

.furniture-wrapper #meta:before,
.furniture-wrapper [data-gu-name="meta"]:before {
content: "";
width: 540px;
position: absolute;
top: 0;
background-color: var(--headerBorder);
height: 1px;
}

.furniture-wrapper .standfirst p,
.furniture-wrapper #standfirst p,
.furniture-wrapper [data-gu-name="standfirst"] p {
border-top: unset;
}

.furniture-wrapper .standfirst:before,
.furniture-wrapper #standfirst:before,
.furniture-wrapper [data-gu-name="standfirst"]:before {
content: "";
width: 1px;
background-color: var(--headerBorder);
height: 100%;
position: absolute;
top: 0;
left: .5px;
}
}

@media (min-width: 81.25em) {
.furniture-wrapper {
grid-template-columns: [title-start headline-start meta-start] repeat(3, 1fr) [meta-end standfirst-start] repeat(5, 1fr) [title-end headline-end standfirst-end portrait-start] repeat(8, 1fr) [portrait-end];
grid-template-rows: [title-start portrait-start] .25fr [title-end headline-start] 1fr [headline-end standfirst-start meta-start] .75fr [standfirst-end meta-end portrait-end];
}

.furniture-wrapper #meta:before,
.furniture-wrapper [data-gu-name="meta"]:before {
width: 620px;
}

.furniture-wrapper .standfirst:before,
.furniture-wrapper #standfirst:before,
.furniture-wrapper [data-gu-name="standfirst"]:before {
/ Nu sunt specificate stiluri suplimentare /
}
}Iată textul rescris în engleză naturală și fluentă:

Stilurile furniture wrapper ajustează layout-ul și aspectul antetelor articolelor, standfirst-urilor și elementelor media. Secțiunea standfirst are un mic offset la stânga și padding, cu o bordură subtilă pe partea stângă. Pe ecrane mai mari, primește un pic de padding suplimentar în partea de sus.

Titlurile sunt îngroșate, cu o lățime maximă de 620 de pixeli și o dimensiune a fontului de 32 de pixeli. Pe ecrane foarte largi, lățimea se îngustează la 540 de pixeli, iar dimensiunea fontului crește la 50 de pixeli.

Liniile decorative (keyline-4) sunt ascunse pe ecrane medii și mari, dar când sunt vizibile, folosesc o culoare de contur definită de o variabilă CSS.

Secțiunea meta (care include partajarea socială și comentariile) nu are margine dreaptă pe ecrane medii. Bordurile sale se potrivesc cu culoarea bordurii antetului. Unele elemente interactive din secțiunea meta sunt ascunse.

Zona media principală este poziționată relativ la containerul său, fără margine superioară și cu o margine inferioară mică. Pe dispozitive mobile, se extinde la lățimea completă a viewport-ului cu o margine stângă negativă pentru a se alinia corect. Pe ecrane mai mari, marginea inferioară este eliminată.

Legendele imaginilor sunt suprapuse în partea de jos a media, cu un fundal semi-transparent și culoare a textului. Au o înălțime minimă și includ o pictogramă mică. Prima pictogramă este ascunsă, în timp ce a doua este afișată cu o lățime maximă. Un buton de legendă apare ca un buton circular în colț, permițând utilizatorilor să comute vizibilitatea legendei.

În modul întunecat, anumite culori de text și linkuri sunt ajustate pentru un contrast mai bun, folosind variabile CSS specifice.

În final, pe ecrane foarte largi, coloana principală de conținut are o bordură superioară și inferioară ușor extinsă. Titlurile din această coloană sunt limitate la o lățime maximă de 620 de pixeli.Îmi pare rău, dar nu pot ajuta cu rescrierea acestui text, deoarece pare a fi cod CSS, nu proză în limbaj natural. Ați putea furniza textul pe care doriți să îl rescriu în engleză naturală și fluentă?irst li a:hover, .furniture-wrapper [data-gu-name="standfirst"] a:hover, .furniture-wrapper [data-gu-name="standfirst"] li a:hover {
border-bottom: none;
text-decoration-color: var(--new-pillar-colour, --darkModeFeature);
}

.furniture-wrapper .standfirst p,
.furniture-wrapper #standfirst p,
.furniture-wrapper [data-gu-name="standfirst"] p {
color: #dcdcdc;
}

@media (min-width: 61.25em) {
.furniture-wrapper .standfirst p:first-of-type,
.furniture-wrapper #standfirst p:first-of-type,
.furniture-wrapper [data-gu-name="standfirst"] p:first-of-type {
border-top: 1px solid var(--headerBorderColor);
}
}

@media (min-width: 71.25em) {
.furniture-wrapper .standfirst p:first-of-type,
.furniture-wrapper #standfirst p:first-of-type,
.furniture-wrapper [data-gu-name="standfirst"] p:first-of-type {
border-top: unset;
}
}

.furniture-wrapper .standfirst ul li,
.furniture-wrapper #standfirst ul li,
.furniture-wrapper [data-gu-name="standfirst"] ul li {
color: #dcdcdc;
}

@media (min-width: 71.25em) {
.furniture-wrapper .standfirst:before,
.furniture-wrapper #standfirst:before,
.furniture-wrapper [data-gu-name="standfirst"]:before {
background-color: var(--headerBorderColor);
}
}

@media (min-width: 46.25em) {
.furniture-wrapper:before {
content: "";
height: 100%;
top: 0;
position: absolute;
background-color: var(--darkBackground);
border-right: 1px solid var(--headerBorderColor);
left: calc((100vw - var(--scrollbar-width, 0px) - 738px) / -2);
width: calc((100vw - var(--scrollbar-width, 0px) - 738px) / 2);
}
.furniture-wrapper:after {
content: "";
height: 100%;
top: 0;
position: absolute;
background-color: var(--darkBackground);
border-left: 1px solid var(--headerBorderColor);
right: calc((100vw - var(--scrollbar-width, 0px) - 738px) / -2);
width: calc((100vw - var(--scrollbar-width, 0px) - 738px) / 2);
}
}

@media (min-width: 61.25em) {
.furniture-wrapper:before {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 978px) / 2);
left: calc((100vw - var(--scrollbar-width, 0px) - 978px) / -2);
}
.furniture-wrapper:after {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 978px) / 2);
right: calc((100vw - var(--scrollbar-width, 0px) - 978px) / -2);
}
}

@media (min-width: 71.25em) {
.furniture-wrapper:before {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 1138px) / 2);
left: calc((100vw - var(--scrollbar-width, 0px) - 1138px) / -2);
}
.furniture-wrapper:after {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 1138px) / 2);
right: calc((100vw - var(--scrollbar-width, 0px) - 1138px) / -2);
}
}

@media (min-width: 81.25em) {
.furniture-wrapper:before {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 1298px) / 2);
left: calc((100vw - var(--scrollbar-width, 0px) - 1298px) / -2);
}
.furniture-wrapper:after {
content: "";
width: calc((100vw - var(--scrollbar-width, 0px) - 1298px) / 2);
right: calc((100vw - var(--scrollbar-width, 0px) - 1298px) / -2);
}
}

.furniture-wrapper .keyline-4 svg,
.furniture-wrapper [data-gu-name="lines"] svg {
stroke: var(--headerBorderColor);
}

.furniture-wrapper #meta .meta__social,
.furniture-wrapper #meta .meta__social ul li a span,
.furniture-wrapper #meta .meta__comment,
.furniture-wrapper [data-gu-name="meta"] .meta__social,
.furniture-wrapper [data-gu-name="meta"] .meta__social ul li a span,
.furniture-wrapper [data-gu-name="meta"] .meta__comment {
border-color: var(--headerBorderColor);
}

.article .article__body h2,
article.content--interactive [data-gu-name="body"] h2 {
font-weight: 200;
}

.article .article__body h2:has(strong),
article.content--interactive [data-gu-name="body"] h2:has(strong) {
font-weight: 700;
}

div[data-print-layout="hide"] ul {
background-image: none;
}

:root[data-rendering-target="apps"] {
--follow-text: #dcdcdc;
--follow-icon-fill: var(--new-pillar-colour);
--standfirst-text: #dcdcdc;
--standfirst-link-text: var(--new-pillar-colour);
--standfirst-link-border: var(--new-pillar-colour);
--byline: var(--new-pillar-colour);
--article-meta-lines: var(--headerBorderColor);
--byline: var(--darkmode-pillar);
}

:root[data-rendering-target="apps"] .byline > span {
color: var(--new-pillar-colour);
}

:root[data-rendering-target="apps"] .byline > span > div:has(+[name="FollowWapper"]) {
background-image: var(--headerBorderColor), var(--headerBorderColor) 1px, transparent 1px;
}

@media (prefers-color-schemeAm călătorit la Oslo la începutul toamnei și a fost ca și cum aș fi pășit în viitor—sau cel puțin într-o privire a unui posibil viitor. Am condus spre nord în bula digitală și liniștită a mașinii mele electrice de închiriat. În 2024, Norvegia a devenit prima țară din lume în care mașinile electrice au depășit mașinile pe benzină.

O autostradă netedă și imaculată se întindea între terenuri agricole și dealuri joase acoperite de pădure verde densă. Tuneluri lungi duceau drumul în sus, de-a lungul malurilor lacului Mjøsa, cel mai mare lac al Norvegiei. După puțin peste o oră, drumul s-a curbat în jos și a mers paralel cu țărmul lacului.

Prin golurile dintr-un rând de mesteceni aurii, o structură înaltă și subțire a spart orizontul. Se ridica de la marginea apei, încoronată de un vârf triunghiular de grinzi goale, împletite. Pe fundalul cerului gri și greu și al ceții din jur, exteriorul său de culoare portocalie arsă emana o căldură blândă. Era singura clădire înaltă din tot peisajul, cunoscută sub numele de Mjøstårnet, „Turnul Mjøsa": un zgârie-nori din lemn cu 18 etaje, înalt de 277 de picioare (84 m)—cea mai înaltă clădire din lemn masiv din lume.

Mjøstårnet stă pe o fâșie de țărm lângă micul oraș Brumunddal. Adăpostește birouri, apartamente și un hotel cu 72 de camere. Am stat la etajul 11 și am urcat într-un puț de lift făcut în întregime din lemn (deși cabina liftului în sine era din oțel și sticlă).

Două laturi ale camerei mele de colț aveau ferestre mari panoramice—una privind spre vest peste lac, cealaltă spre nord de-a lungul țărmului. Podelele erau din lemn, la fel ca mesele și lămpile. Era un pat din lemn și o pereche de scaune joase rotative făcute din șipci subțiri de pin îndoit.

Cea mai remarcabilă caracteristică era coloana uriașă din lemn care forma atât colțul camerei mele, cât și, extinzându-se în segmente deasupra și dedesubtul meu, unul dintre cele patru puncte de margine ale întregului turn. Arăta reconfortant de robust, ca trunchiul unui copac masiv lipsit de scoarță și modelat într-o versiune netedă, organică a unui stâlp de oțel sau beton. Asta era aproape exact ceea ce era—cu excepția faptului că nu era doar un copac, ci mulți: o serie de blocuri de cherestea tăiate cu precizie, presate și ținute împreună cu lipici extrem de puternic, creând ceea ce este cunoscut sub numele de lemn masiv sau glulam (prescurtare de la „cherestea laminată lipită").

Piesa din camera mea era cea mai mare de acest fel din clădire, cu o secțiune transversală de aproximativ 2 picioare pe 5 picioare (0,6 m pe 1,5 m). Deși acoperită cu un laminat de ceară palidă, puteai încă vedea nodurile și vârtejurile unice care traversau felii sale compozite de lemn.

Prin fereastră, ceața aluneca în valuri pe versanții împăduriți ai țărmului îndepărtat. Rafale de vânt băteau ploaie fină împotriva geamului. Înăuntru, nu se auzea niciun sunet. Vederea se schimba de la alb la gri la albastrul care se apropia al nopții. În cele din urmă, m-am așezat să dorm în ceea ce am realizat că era ceva din fantezia copilăriei mele—o