/* Preserve the approved opening. The city is the second scene, not its replacement. */
.city-edition .hero{padding-top:96px}
.city-edition .hero h1{letter-spacing:-.055em}
.city-edition .hero-editorial{color:var(--ink)}
.city-edition .phrase,.city-edition h2,.city-edition h3{text-wrap:balance;max-width:100%}
.city-edition #leader-name{word-break:keep-all;overflow-wrap:normal}
.city-second{padding:95px 0 0;min-height:0;display:block;background:#e9eee7;scroll-margin-top:74px}
.city-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;padding-bottom:30px;position:relative;z-index:3}
.city-section-heading h2{font-size:clamp(32px,3.5vw,54px);line-height:1.6;letter-spacing:-.055em;margin-top:22px}
.city-section-heading>p{font-size:15px;line-height:2.1;padding-bottom:8px}
.city-second>.city-viewport{position:relative;inset:auto;width:100%;height:clamp(510px,51vw,760px);margin:0}
.city-second>.city-viewport::after{display:none}
.city-second .city-readout{left:var(--gutter);bottom:30px}
.city-second .city-footer{position:relative;height:auto;min-height:78px;left:auto;right:auto;bottom:auto}
.city-second .city-tools{top:40%}
.city-second .city-static{padding:20px var(--gutter) 70px}
.city-second .city-load-note{font-size:11px}
.city-night-active .city-section-heading .eyebrow{color:#d1dcca}

/* Regional illustrations surround a quiet reading surface; none sit behind the copy. */
.city-vision{padding-block:75px 190px;min-height:970px;isolation:isolate}
.vision-track{z-index:1;font-size:clamp(70px,10vw,160px);opacity:.75}
.vision-manifesto{width:min(62%,1000px);margin:105px auto 0;padding:55px 55px 65px;background:#f8f6f0f5;border:1px solid #d4d6c8;box-shadow:0 30px 60px -45px #193d3440;text-align:center;z-index:3}
.vision-manifesto .eyebrow{justify-content:center}
.vision-manifesto h2{font-size:clamp(34px,3.8vw,62px);margin-top:30px;max-width:none}
.vision-coda{display:block;max-width:650px;margin:30px auto 0}
.vision-coda .coda-index{display:none}.vision-coda p{font-size:16px;line-height:2.1}
.iwate-culture{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.iwate-culture img{position:absolute;object-fit:contain;filter:saturate(.78);will-change:transform}
.iwate-bank{width:31%;height:40%;left:-3%;top:15%;opacity:.73}
.iwate-horse{width:26%;height:38%;right:-2%;top:16%;opacity:.76}
.iwate-sansa{width:22%;height:43%;left:-2%;bottom:6%;opacity:.75}
.iwate-iron{width:26%;height:32%;right:-1%;bottom:3%;opacity:.83}
.iwate-soba{width:22%;height:24%;left:20%;bottom:-1%;opacity:.7}
.iwate-reimen{width:22%;height:25%;right:22%;bottom:-3%;opacity:.72}

/* The model and the explanation share one stage. Hover previews; click commits a view. */
.engine-experience{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);background:#f7f5ed;border:1px solid #b4c1ad;border-radius:2px 70px 2px 2px;overflow:hidden;margin-top:65px;box-shadow:none}
.engine-top{grid-column:1/-1;padding:34px 38px 0;align-items:center}
.engine-top>.en{font-size:clamp(28px,3vw,46px)}
.engine-top>p{font-size:15px;line-height:1.7;margin-left:auto;margin-right:35px}
.engine-top .engine-index{font-size:17px;color:#6c8067}
.engine-experience .volume-viewport{grid-column:1;grid-row:2;min-width:0;height:clamp(460px,43vw,640px);margin:0;overflow:hidden;align-self:center}
.engine-experience .volume-viewport.is-hovering{cursor:pointer}
.engine-caption{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border:0;background:transparent;padding:45px 45px 45px 14px;min-width:0;gap:0;min-height:0}
.engine-caption-kicker{display:block;color:var(--orange);font-size:19px;margin-bottom:28px;font-style:italic}
.engine-caption-title{font-size:clamp(34px,3.2vw,49px);line-height:1.15;letter-spacing:-.025em;min-height:2.3em;display:flex;align-items:flex-end}
.engine-caption-body{font-size:16px;line-height:2;margin-top:26px;min-height:8em}
.engine-output{display:flex;flex-direction:column;gap:10px;border-block:1px solid #b9c3af;width:100%;padding:20px 0;margin-top:20px;font-size:13px;line-height:1.6}
.engine-output i{font-style:normal;color:var(--orange);font-family:var(--en);font-size:20px;line-height:1;transform:rotate(90deg);transform-origin:7px center}
.engine-detail-link{font-size:14px;margin-top:24px;grid-column:auto;white-space:normal}
.engine-controls{grid-column:1/-1;grid-row:3;justify-content:space-between;border-top:1px solid #bac5b1;padding:22px 30px;gap:15px}
.engine-select{border-radius:0;padding:0;border:0;background:none;gap:8px}
.engine-select button{font-size:23px;min-width:64px;border-radius:0;border-bottom:1px solid #aab8a1;padding:12px 18px}
.engine-select button:first-child{font-size:12px}
.engine-select button:hover{background:#e6ebdf}
.engine-select button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.volume-toolbar button{border-radius:0;font-size:12px}
.model-markers{pointer-events:none}
.model-markers>button{position:absolute;top:0;left:0;pointer-events:auto;display:flex;align-items:center;gap:7px;border:1px solid #9ba98f;background:#f7f5edf2;color:var(--ink);font:14px/1.2 var(--en);padding:9px 12px;min-height:40px;box-shadow:0 5px 15px #1a372714;transition:background .25s,color .25s}
.model-markers>button i{font-size:20px;font-style:normal}.model-markers>button.active,.model-markers>button.is-peek{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.engine-experience[data-preview="1"] .engine-caption-kicker{color:#bb5735}
.engine-experience[data-preview="2"] .engine-caption-kicker{color:#697f47}
.engine-experience .drag-hint{font-size:15px}
.engine-experience:not(.volume-ready) .model-markers{display:none}

@media(max-width:1100px){
 .city-edition .hero-editorial{padding-inline:28px}
 .engine-experience{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
 .engine-top{padding:30px 26px 0}.engine-top>p{margin:0 0 0 auto}.engine-top .engine-index{display:none}
 .engine-caption{padding:30px 25px 30px 5px}.engine-caption-title{font-size:36px}.engine-caption-body{font-size:15px;min-height:10em}.engine-caption-kicker{margin-bottom:15px}
 .engine-controls{padding:20px}.engine-select button{padding-inline:14px}.engine-experience .drag-hint{display:none}
 .vision-manifesto{width:68%;padding:40px 35px 50px}.vision-manifesto h2{font-size:36px}.city-vision{min-height:900px}.vision-coda{max-width:none}
}
@media(max-width:760px){
 .city-edition .hero{display:flex;flex-direction:column;padding-top:80px;min-height:0;background:var(--paper)}
 .city-edition .hero-landscape{position:relative;margin:0;height:clamp(290px,84vw,500px);min-height:0;flex:none;border-radius:0 80px 0 0}
 .city-edition .hero-landscape img{object-fit:cover}
 .city-edition .hero-editorial{position:relative;inset:auto;padding:30px var(--gutter) 32px;display:block;color:var(--ink)}
 .city-edition .hero-editorial>.eyebrow{font-size:18px;padding:0;line-height:1.4}.city-edition .hero-editorial>.eyebrow br{display:none}
 .city-edition .hero-editorial>.eyebrow::before{position:static;margin:0 10px 0 0}
 .city-edition .hero h1{font-size:clamp(37px,9.5vw,60px);line-height:1.45;margin-top:23px;letter-spacing:-.055em}
 .city-edition .hero h1>span{display:block;white-space:normal;text-wrap:balance}.city-edition .hero h1 .reading{display:inline;font-size:.44em}
 .city-edition .hero-bottom{position:relative;inset:auto;display:flex;flex-wrap:nowrap;align-items:flex-end;gap:12px;margin-top:22px;color:var(--ink)}.city-edition .hero-bottom p{font-size:14px;line-height:2;max-width:27em;flex:1;min-width:0}.city-edition .hero-bottom .round-link{flex:none;width:42px;height:42px;font-size:23px;background:none;border-color:#aeb7a8}
 .city-edition .hero-foot{position:static;padding:0 var(--gutter) 25px;width:100%;font-size:13px}.city-edition .hero-foot>span:last-child{display:none}
 .city-edition .landscape-caption{font-size:12px;bottom:17px;left:var(--gutter);right:var(--gutter)}.city-edition .landscape-caption>span{display:none}.city-edition .scene-index{font-size:12px;top:18px;left:var(--gutter)}
 .city-second{padding:65px 0 0;min-height:0}.city-section-heading{display:block;padding-bottom:12px}.city-section-heading h2{font-size:30px;line-height:1.7;margin-top:20px}.city-section-heading>p{font-size:14px;line-height:2;margin-top:20px}
 .city-second>.city-viewport{height:420px;margin-top:0}.city-second .city-tools{top:auto;bottom:85px}.city-second .city-readout{bottom:20px}.city-second .city-footer{min-height:75px}.city-second .city-coordinates{top:15px}.city-second .city-north{top:20px}
 .city-vision{padding-block:58px 155px;min-height:0}.vision-track{font-size:72px;left:-60px}.vision-manifesto{width:calc(100% - 48px);margin-top:155px;padding:28px 22px 35px;background:#f8f6f0f8}.vision-manifesto .eyebrow{font-size:17px}.vision-manifesto h2{font-size:clamp(27px,6.5vw,40px);line-height:1.7;margin-top:22px}.vision-coda p{font-size:14px;line-height:2.05}
 .iwate-bank{width:57%;height:230px;top:110px;left:-5%;opacity:.67}.iwate-horse{width:44%;height:195px;right:-2%;top:125px;opacity:.7}.iwate-sansa{width:24%;height:220px;left:-4%;bottom:20px;opacity:.6}.iwate-iron{width:30%;height:150px;right:-2%;bottom:15px;opacity:.7}.iwate-soba{width:26%;height:140px;left:22%;bottom:0;opacity:.72}.iwate-reimen{width:30%;height:130px;right:22%;bottom:-10px;opacity:.72}
 .engine-experience{display:flex;flex-direction:column;margin:40px calc(-1 * var(--gutter)) 40px;border-radius:0;border-inline:0;max-width:100vw;overflow:hidden}
 .engine-top{padding:28px 24px 0;display:block}.engine-top>.en{font-size:33px;line-height:1.1}.engine-top>p{font-size:14px;margin-top:12px}.engine-top>p br{display:none}
 .engine-experience .volume-viewport{height:390px;width:100%;margin:0}
 .engine-caption{padding:12px 24px 30px;display:grid;grid-template-columns:1fr;gap:0;min-height:360px;order:3}
 .engine-caption-kicker{font-size:18px;margin-bottom:18px}.engine-caption-title{font-size:35px;min-height:0;display:block}.engine-caption-body{font-size:15px;line-height:1.95;min-height:6em;margin-top:16px}
 .engine-output{margin-top:16px;display:flex;flex-direction:row;flex-wrap:wrap;gap:9px;font-size:12px;align-items:center;min-height:65px;padding:14px 0}.engine-output i{transform:none;font-size:18px}.engine-output span{max-width:100%}
 .engine-detail-link{margin-top:22px;font-size:13px;justify-self:start}
 .engine-controls{order:2;padding:0 20px 25px;border-top:0;justify-content:center;gap:18px}.engine-select{width:100%;display:flex;justify-content:space-between;gap:4px}.engine-select button{min-width:44px;font-size:23px;padding:10px 8px}.engine-select button:first-child{font-size:11px;padding-inline:9px}
 .engine-experience .volume-toolbar{gap:10px}.model-markers>button{font-size:11px;padding:7px 9px;min-height:36px}.model-markers>button i{font-size:17px}
}
@media(max-width:360px){.city-edition .hero-bottom p{font-size:13px}.city-section-heading h2{font-size:27px}.vision-manifesto{width:calc(100% - 36px);padding-inline:20px}.engine-experience .volume-viewport{height:345px}.engine-top>.en{font-size:29px}.engine-caption{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){.iwate-culture img{transform:none!important}}
.motion-paused .iwate-culture img{transform:none!important}
