:root{--ink:#171817;--paper:#eee9df;--red:#9e321f;--green:#293d34;--gold:#c99a4a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.9}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;padding:28px 5vw;display:flex;align-items:center;justify-content:space-between;color:#fff}.brand{display:flex;gap:14px;align-items:center;text-decoration:none}.brand span{font-size:27px;font-weight:700;letter-spacing:.18em}.brand small{font:11px/1.4 sans-serif;letter-spacing:.16em;border-left:1px solid #ffffff77;padding-left:14px}.site-header nav{display:flex;gap:2.2rem;font:12px sans-serif;letter-spacing:.12em}.site-header nav a{text-decoration:none}.menu{display:none}.hero{height:100svh;min-height:650px;position:relative;overflow:hidden;color:#fff}.hero>img{animation:slowzoom 16s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 70%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 50%)}.hero-copy{position:absolute;left:10vw;top:50%;transform:translateY(-45%);z-index:2}.eyebrow{font:11px/1.4 sans-serif;letter-spacing:.24em;text-transform:uppercase}.hero h1{font-size:clamp(46px,7vw,94px);line-height:1.3;letter-spacing:.1em;margin:.25em 0}.hero-copy>p:last-child{font-size:15px;letter-spacing:.16em}.scroll{position:absolute;z-index:2;bottom:30px;right:5vw;text-decoration:none;font:9px sans-serif;letter-spacing:.2em;writing-mode:vertical-rl}.scroll span{display:inline-block;width:1px;height:65px;background:#fff;margin-top:12px}.intro{padding:140px 20vw;text-align:center}.kicker{color:var(--red);letter-spacing:.16em}.intro h2,.section-title h2,.night h2,.closing h2{font-size:clamp(32px,4vw,58px);line-height:1.55;letter-spacing:.08em;margin:.5em 0}.lead{max-width:710px;margin:2.5rem auto 0;text-align:left}.pillars{display:grid;grid-template-columns:1fr 1fr}.pillar{min-height:600px;padding:9vw 8vw;position:relative}.pillar .number{position:absolute;right:7vw;top:5vw;font:80px/1 Georgia,serif;opacity:.1}.pillar h2{font-size:clamp(32px,4vw,58px);line-height:1.45;letter-spacing:.08em}.pillar p:not(.eyebrow){max-width:480px}.pillar a{display:inline-block;margin-top:2rem;text-decoration:none;border-bottom:1px solid}.past{background:#d8d0c2}.future{background:var(--green);color:#fff}.pending{display:inline-block;margin-top:2rem;padding:.5rem 1.4rem;border:1px solid #ffffff77;font:11px sans-serif;letter-spacing:.2em}.making{padding:140px 8vw}.section-title{margin:0 0 70px 7vw}.photo-wide{height:min(72vw,820px);margin:0}.photo-wide figcaption,.raise figcaption{font:11px sans-serif;letter-spacing:.16em;margin-top:10px}.making-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;margin:130px 7vw}.making-grid figure{height:620px;margin:0}.making-copy{font-size:18px}.stroke{display:block;width:55px;height:2px;background:var(--red);margin-bottom:35px}.raise{position:relative;margin:0 0 50px;height:74vh;min-height:560px}.raise figcaption{position:absolute;right:0;bottom:0;background:var(--paper);padding:36px 5vw;font-family:inherit;font-size:15px;letter-spacing:.08em}.night{background:#111;color:#fff;padding:140px 8vw}.night-copy{max-width:700px;margin-left:7vw;margin-bottom:80px}.night-copy>p:last-child{color:#cbc7bf}.fire-pair{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:18px;height:72vh;min-height:560px}.fire-pair>img{min-width:0;min-height:0;max-width:100%}.closing{padding:160px 10vw;text-align:center;background:#e3ded3}.closing>p:not(.eyebrow){max-width:700px;margin:2rem auto}.closing blockquote{color:var(--red);font-size:clamp(30px,4vw,54px);letter-spacing:.1em;margin:1.5em 0}.button{display:inline-block;background:var(--ink);color:#fff;padding:17px 32px;font:12px sans-serif;letter-spacing:.14em}footer{background:var(--ink);color:#aaa;padding:55px 6vw;display:flex;justify-content:space-between;font:11px sans-serif;letter-spacing:.14em}.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}@keyframes slowzoom{from{transform:scale(1.08)}to{transform:scale(1)}}@media(max-width:760px){.site-header{padding:20px}.site-header nav{display:none;position:absolute;top:70px;right:20px;background:#111;padding:24px;flex-direction:column}.site-header nav.open{display:flex}.menu{display:block;background:none;border:1px solid #ffffff77;color:#fff;padding:8px 12px}.hero-copy{left:8vw}.hero h1{font-size:44px}.intro{padding:100px 8vw}.pillars{grid-template-columns:1fr}.pillar{min-height:auto;padding:100px 9vw}.making{padding:100px 5vw}.section-title{margin-left:3vw}.making-grid{grid-template-columns:1fr;margin:90px 3vw;gap:50px}.making-grid figure{height:60vh}.raise{height:70vh}.raise figcaption{left:0;right:auto}.night{padding:100px 5vw}.night-copy{margin-left:3vw}.fire-pair{grid-template-columns:1fr;height:auto}.fire-pair img{height:55vh}.fire-pair img+img{height:40vh}.closing{padding:110px 7vw}footer{display:block}footer small{display:block;margin-top:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero>img{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Longer editorial headings retain readable line lengths on small screens. */
.hero h1{font-size:clamp(30px,5.1vw,78px)}
.intro .history-heading{font-size:clamp(24px,2.6vw,38px);line-height:1.8;letter-spacing:.04em;text-align:left;max-width:850px;margin:.5em auto}
.lead+.lead{margin-top:1.2rem}
@media(max-width:760px){.hero h1{font-size:clamp(23px,6.5vw,44px);letter-spacing:.04em}.section-title h2{font-size:clamp(25px,6vw,42px)}.night h2{font-size:clamp(27px,6.5vw,44px)}}

/* Restore the bold opening and let the night photographs close the page. */
.hero h1{font-size:clamp(46px,7vw,94px);letter-spacing:.1em}
.night{padding-bottom:90px}
footer{border-top:1px solid #ffffff19}
@media(max-width:760px){.hero h1{font-size:clamp(34px,9vw,60px);letter-spacing:.06em}.night{padding-bottom:60px}}

/* Material detail complements the wide view of the whole worksite. */
.making-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:4vw;margin:100px 0 110px;align-items:center}
.making-grid figure{height:auto;aspect-ratio:3/2}
.making-grid figure img{object-fit:contain}
.making-copy{font-size:clamp(16px,1.35vw,18px)}
@media(max-width:1000px){.making-grid{grid-template-columns:1fr;gap:36px;margin:75px 3vw 90px}.making-copy{max-width:680px}.stroke{margin-bottom:24px}}

.film-link{margin-top:64px;padding-top:35px;border-top:1px solid #ffffff33;display:flex;justify-content:space-between;align-items:center;gap:30px}.film-link .eyebrow{color:#c99a4a;margin:0 0 15px}.film-link h3{font-size:clamp(18px,2.2vw,28px);font-weight:500;letter-spacing:.06em;line-height:1.8;margin:0}.film-link a{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;flex-shrink:0;padding:16px 23px;border:1px solid #ffffff77;text-decoration:none;font-size:13px;letter-spacing:.08em;transition:background .2s,color .2s}.film-link a:hover{background:#eee9df;color:#171817}.film-link a:focus-visible{outline:2px solid #c99a4a;outline-offset:5px}@media(max-width:760px){.film-link{margin-top:42px;padding-top:28px;flex-direction:column;align-items:flex-start;gap:24px}.film-link h3{font-size:20px}.film-link a{padding:14px 22px}}

/* Film heading uses one size; the hero crops from the top. */
.film-label,.film-title{display:block;font-size:inherit}
.hero>img{width:calc(100% + 12px);max-width:none;margin-left:-6px;object-fit:cover;object-position:center center;transform-origin:center center}
@media(max-width:760px){.film-link h3{font-size:clamp(15px,4.4vw,20px);letter-spacing:0;line-height:1.8}}

/* On wide displays show the middle two thirds, with black space beside the photograph. */
@media(min-width:1100px) and (min-aspect-ratio:3/2){
.hero{background:#030303}
.hero>img{position:absolute;top:-25%;right:5vw;left:auto;width:auto;height:150%;max-width:none;margin:0;object-fit:contain;object-position:center;clip-path:inset(0 5px 0 5px);animation:none;transform:none}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.4),rgba(0,0,0,.12) 52%,transparent 75%)}
}

/* Photo archive entrance, added for the public top page. */
.gallery-entry{padding:75px max(24px,8vw);display:flex;align-items:center;justify-content:space-between;gap:35px;background:#e9e5dc;color:#252721}.gallery-entry h2{font-family:"Yu Mincho",serif;font-size:30px;font-weight:500;margin:12px 0}.gallery-entry p{max-width:650px;line-height:1.9}.gallery-entry>a{flex-shrink:0;border:1px solid currentColor;padding:15px 25px;text-decoration:none}.gallery-entry>a span{margin-left:25px}footer nav{font-size:13px;margin:16px 0}footer nav a{color:inherit;text-underline-offset:5px}@media(max-width:760px){.gallery-entry{padding:50px 24px;flex-direction:column;align-items:flex-start}.gallery-entry h2{font-size:26px}}
