/* FI NEXT — a photographic archive with a coherent blue, silver and gold system. */
@font-face{font-family:"FI NEXT Sans JP";src:url("/assets/fonts/fi-net-sans-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"FI NEXT Sans JP";src:url("/assets/fonts/fi-net-sans-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{--paper:#f5f7fb;--white:#fff;--ink:#18314f;--muted:#61728a;--blue:#0757bb;--night:#072a61;--line:#d5dfe9;--gold:#a0814e;--ice:#d7e8fb;--sans:"FI NEXT Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--latin:Arial,Helvetica,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--gutter:clamp(24px,4.6vw,88px);--header-h:80px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 24px)}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.95 var(--sans);letter-spacing:.01em;-webkit-font-smoothing:antialiased;overflow-x:clip}
body.dialog-open{overflow:hidden}
h1,h2,h3,p,figure,ul,ol,dl{margin:0}
h1,h2,h3{font-weight:700;line-height:1.55;letter-spacing:-.035em;word-break:auto-phrase;text-wrap:balance}
h2{font-size:clamp(32px,3.5vw,52px)}
h3{font-size:25px;line-height:1.65}
p{word-break:auto-phrase;text-wrap:pretty}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit;letter-spacing:inherit}
button{border:0;background:none;cursor:pointer;padding:0;text-align:inherit}
input,select{min-width:0;border-radius:0}
img{display:block;max-width:100%;height:auto}
svg{display:block}
button,a,input,select{-webkit-tap-highlight-color:transparent}
:is(button,a,input,select):focus-visible{outline:2px solid var(--focus-color,#1872da);outline-offset:5px}
button:disabled{cursor:default}
[hidden]{display:none!important}
.section-wrap{width:min(1320px,calc(100% - var(--gutter)*2));margin-inline:auto}
.eyebrow{display:flex;align-items:center;gap:13px;font:10px/1.7 var(--mono);letter-spacing:.1em;color:var(--gold)}
.mono{font-family:var(--mono);letter-spacing:.025em}
.keep-phrase{white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:20px;z-index:400;padding:9px 20px;background:#fff;color:#0b459a;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.reading-progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:300;background:linear-gradient(90deg,#79c5ff,#dabc84);transform:scaleX(0);transform-origin:left;pointer-events:none}
.chapter-number{font:11px/1 var(--mono);color:inherit;display:inline-flex;align-items:center;gap:12px}
.chapter-number::after{content:"";width:25px;height:1px;background:currentColor;opacity:.5}
.section-heading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:end;gap:50px;margin-bottom:46px}
.section-heading h2{margin-top:20px;max-width:740px}
.section-note{font-size:14px;line-height:2;max-width:340px;justify-self:end;color:var(--muted)}
.small-note{font-size:12px;line-height:1.9}
.text-link,.source-link{display:inline-flex;align-items:center;gap:24px;font-size:12px;font-weight:700;line-height:1.8;min-height:44px;padding-block:6px;border-bottom:1px solid #a2814d80;color:#174f92;transition:color .2s,border-color .2s}
.text-link>span:not(.sr-only),.source-link>span:not(.sr-only){font:23px/1 var(--latin);font-weight:400}
.text-link:hover,.source-link:hover{color:#0671df;border-color:#0671df}
.photo-button{display:block;position:relative;width:100%;isolation:isolate;overflow:hidden}
.photo-button>img{width:100%;height:auto}
.photo-button::after{content:"";position:absolute;inset:0;border:1px solid #99b4d64d;pointer-events:none;transition:border-color .2s,box-shadow .2s}
.photo-button:hover::after{border-color:#d0ad75;box-shadow:inset 0 0 0 4px #e8ce9820}
.photo-action{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid #f6e3bd80;background:#092d62d9;color:#fff3da;font:26px/1 var(--latin);backdrop-filter:blur(10px);pointer-events:none}
.site-header{height:var(--header-h);position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:var(--gutter);color:#fff;background:#011942;border-bottom:1px solid #ffffff29;backdrop-filter:blur(20px)}
.header-identity{display:flex;align-items:center;gap:25px;flex:none}
.brand{display:inline-flex;align-items:center;flex-shrink:0;max-width:100%}
.anniversary-next-logo{display:block;position:relative;overflow:hidden;flex:none;aspect-ratio:1580/390;width:210px;background:#011942}
.anniversary-next-logo>img{display:block;position:absolute;left:-15.189873%;top:-38.461539%;width:129.620254%;max-width:none;height:auto;filter:none;opacity:1}
.header-edition{display:none}
.main-nav{display:flex;align-items:center;gap:clamp(19px,1.8vw,30px);font-size:12px;line-height:1.7}
.main-nav>a{position:relative;display:block;padding-block:14px;white-space:nowrap;transition:color .2s}
.main-nav .nav-index{display:none}
.main-nav>a::after{content:"";position:absolute;bottom:6px;left:0;right:0;height:1px;transform:scaleX(0);transform-origin:left;background:#e2c592;transition:transform .2s}
.main-nav>a:hover,.main-nav>a[aria-current=location]{color:#f5dcb0}
.main-nav>a:hover::after,.main-nav>a[aria-current=location]::after{transform:scaleX(1)}
.main-nav .nav-archive{display:flex;align-items:center;gap:22px;padding:8px 10px 8px 19px;border:1px solid #d6eaff70;background:#e9f3ff0d}
.main-nav .nav-archive::after{display:none}
.nav-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e9f2fd;color:#0a4692;font:22px/1 var(--latin)}
.menu-toggle{display:none}
.menu-lines{width:24px;height:17px;position:relative}
.menu-lines::before,.menu-lines::after{content:"";position:absolute;left:0;width:24px;height:1px;background:currentColor;transition:transform .2s,top .2s}
.menu-lines::before{top:4px}.menu-lines::after{top:12px}
.menu-toggle[aria-expanded=true] .menu-lines::before{top:8px;transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-lines::after{top:8px;transform:rotate(-45deg)}
.site-header :focus-visible{--focus-color:#f0d4a1}

/* Selected official news gives the opening an immediate, concrete connection. */
.press-ribbon{color:#dbe9ff;background:#08295c;border-top:1px solid #bed5f633;border-bottom:1px solid #bed5f633}
.press-ribbon-inner{display:grid;grid-template-columns:155px minmax(0,1fr) auto;align-items:center;gap:35px;min-height:108px;padding-block:22px}
.press-ribbon-label{display:grid;gap:3px;color:#e5c998}
.press-ribbon-label>span{font:9px/1.7 var(--mono);letter-spacing:.12em}
.press-ribbon-label>strong{font-size:13px;font-weight:400}
.press-ribbon-news{display:flex;align-items:center;gap:24px;font-size:14px;line-height:1.9}
.press-ribbon-news time{flex:none;color:#bdd0ec;font:11px/1.8 var(--mono)}
.press-ribbon-news:hover{color:#f5dcb0}
.press-ribbon-more{font-size:11px;padding:9px 0;border-bottom:1px solid #d5b78080;white-space:nowrap}
.press-ribbon :focus-visible{--focus-color:#e9cea0}

/* A silver page, a clean office frame and a single gold connection line. */
.fi-origin{position:relative;isolation:isolate;background:linear-gradient(135deg,#fff,#f2f5fa);overflow:hidden}
.origin-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:30px 70px;padding-block:96px 60px;position:relative}
.origin-heading{grid-column:1;grid-row:1;max-width:620px}
.origin-heading h2{margin-top:22px}
.origin-years{display:flex;align-items:center;gap:20px;margin-top:24px;color:#88734f;font:14px/1.6 var(--mono)}
.origin-years i{width:100px;height:1px;background:linear-gradient(90deg,#ac8950,#b3c6df)}
.origin-space{position:relative;grid-column:2;grid-row:1/3;align-self:center;min-width:0}
.origin-space::before{content:"";position:absolute;inset:-12px -12px 45px 20px;border:1px solid #b9a07959;z-index:-1;pointer-events:none}
.origin-space picture{display:block;box-shadow:0 18px 45px #1e446c12}
.origin-space img{width:100%;height:auto}
.origin-space figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:15px;color:#6f7c8e;font-size:10px;line-height:1.8}
.origin-space figcaption .mono{font-size:8px;letter-spacing:.06em}
.origin-copy{grid-column:1;grid-row:2;max-width:530px;color:#61728a;font-size:14px;line-height:2.1}
.origin-copy>p+p{margin-top:16px}
.origin-copy .intro-first{font-size:15px;font-weight:700;color:#23486f}
.origin-copy>p:last-child{color:#23486f}
.origin-connection{grid-column:1/-1;display:flex;align-items:center;gap:27px;padding-top:30px;margin-top:22px;border-top:1px solid #cad5e3}
.origin-connection>div{display:flex;align-items:center;gap:16px;flex:none}
.origin-connection>div>span{font:9px/1.6 var(--latin);letter-spacing:.1em;color:#7a8ca2}
.origin-connection strong{font-size:24px;font-weight:400}
.origin-connection>i{height:1px;min-width:20px;flex:1;background:linear-gradient(90deg,#c6d9ee,#a28046,#c6d9ee);position:relative}
.origin-connection>i::after{content:"";position:absolute;left:50%;top:-3px;width:7px;height:7px;border:1px solid #b39970;border-radius:50%;background:#fff}
.origin-connection-label{font:8px/1.7 var(--mono);letter-spacing:.1em;color:#8190a3;max-width:110px;margin-left:20px}

/* Two office scenes form one composition; the images retain their full frame. */
.fi-technology{padding-block:88px;background:linear-gradient(145deg,#092a57,#0e3b70);color:#fff;position:relative;overflow:hidden;--focus-color:#ebcfa0}
.fi-technology .eyebrow{color:#dcc299}
.technology-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:60px;align-items:end}
.technology-top h2{margin-top:20px}
.technology-top>p{max-width:430px;font-size:14px;line-height:2.1;justify-self:end;color:#c5d6eb}
.technology-stage{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1.8fr);gap:55px;margin-top:46px;align-items:start}
.technology-letters{display:flex;flex-direction:column;gap:23px;font:clamp(60px,6vw,92px)/1 var(--latin);font-weight:700;letter-spacing:-.05em;color:#eff5ff}
.technology-letters>span:nth-of-type(2){color:#d4bc90}
.technology-letters>i{height:1px;width:100%;background:linear-gradient(90deg,#c8dffb70,transparent)}
.technology-letters>small{font:8px/1.8 var(--mono);letter-spacing:.1em;color:#a3bdda;margin-top:12px}
.technology-images{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:26px;align-items:start;min-width:0}
.work-design,.work-development{position:relative;min-width:0}
.work-development{margin-top:105px}
.work-photo{border:1px solid #c6dffb4d;box-shadow:0 20px 40px #00183425}
.work-photo img{width:100%;height:auto}
.technology-images figcaption{display:flex;flex-direction:column;gap:7px;margin-top:16px}
.technology-images figcaption>.mono{font-size:9px;color:#cdbb97}
.technology-images figcaption strong{font-size:18px;line-height:1.8}
.work-image-kind{font-size:10px;color:#a5bfdb}
.work-development figcaption strong{font-size:16px}

/* A full photographic spread, with the caption rather than ornaments as its frame. */
.fi-opening{padding-block:78px;background:#092b5a;color:#fff;overflow:hidden;--focus-color:#ebcfa0}
.opening-inner{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.8fr);gap:50px;align-items:center}
.opening-scene{grid-column:1;grid-row:1;position:relative}
.opening-scene figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:16px;font-size:12px;color:#c4d4e8}
.opening-scene figcaption .mono{font-size:9px;color:#d4bd97}
.opening-copy{grid-column:2;grid-row:1}
.opening-copy .eyebrow{color:#d6bc92;font-size:9px;letter-spacing:.04em}
.opening-copy h2{font-size:clamp(30px,3vw,46px);margin-top:25px}
.opening-axis{display:block;height:1px;width:100px;margin-top:30px;background:linear-gradient(90deg,#dcc094,transparent)}
.opening-word{font:9px/1.8 var(--mono);letter-spacing:.15em;color:#b5c7df;margin-top:14px}

/* An editorial spread with one lead story and two secondary stories. */
.fi-stories{padding-block:94px 84px;background:#f8fafc;position:relative;overflow:hidden}
.story-editorial{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:62px 46px;counter-reset:story}
.story-editorial article{counter-increment:story;position:relative;min-width:0}
.story-primary{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:60px;align-items:center}
.story-photo{position:relative;min-width:0}
.story-primary .story-photo::before{content:"";position:absolute;inset:-11px 18px 18px -11px;border:1px solid #ba9b6e80;pointer-events:none}
.story-copy{min-width:0;position:relative}
.story-primary .story-copy::before{content:"01";font:72px/1 var(--latin);letter-spacing:-.05em;color:#dce4ec;display:block;margin-bottom:26px}
.story-place{font:10px/1.9 var(--mono);display:flex;gap:9px 15px;justify-content:space-between;flex-wrap:wrap;color:#7a6545;letter-spacing:0}
.story-copy h3{margin-top:18px;font-size:29px;line-height:1.7}
.story-copy h3 button{font:inherit;line-height:inherit;color:inherit;transition:color .2s}
.story-copy h3 button:hover{color:#0963bf}
.story-copy>p:not(.story-place){font-size:14px;line-height:2.05;color:#61728a;margin-top:20px;max-width:550px}
.story-copy .text-link{margin-top:23px}
.story-learning,.story-kindness{display:flex;flex-direction:column;gap:26px;border-top:1px solid #cdd8e5;padding-top:34px}
.learning-pair{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,1fr);gap:21px;align-items:start;min-width:0}
.learning-pair .shop-photo{margin-top:42px}
.story-kindness .story-photo{margin-top:42px}
.story-learning .story-copy,.story-kindness .story-copy{margin-top:auto;padding-top:4px}
.story-learning h3,.story-kindness h3{font-size:25px}
.story-bridge{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(0,1.06fr);gap:28px;align-items:center;margin-top:58px;padding:32px;border-block:1px solid #c1d1e3;background:#edf3f9}
.story-bridge h3{margin-top:13px;font-size:21px}
.story-bridge h3 button{font:inherit}
.story-bridge>div:last-child>p{font-size:13px;line-height:2;color:#60758e}
.story-bridge .text-link{font-size:12px;margin-top:14px}
.bridge-sign{position:relative;width:35px;height:62px;display:flex;flex-direction:column;justify-content:space-between;align-items:center}
.bridge-sign::before{content:"";position:absolute;top:3px;bottom:3px;left:17px;width:1px;background:linear-gradient(#a38550,#8db1db)}
.bridge-sign i{width:9px;height:9px;position:relative;border:1px solid #a28656;border-radius:50%;background:#f6f9ff}
.bridge-sign i:nth-child(2){width:15px;height:15px;border-color:#8db1db;background:#e7effa}
.bridge-sign i:last-child{background:#c67d6b;border-color:#c67d6b}

/* Official headlines and original imagery, with an accessible topic index. */
.fi-press{padding-block:94px 86px;background:linear-gradient(140deg,#082a60,#0b3977);color:#fff;position:relative;overflow:hidden;--focus-color:#edcea0}
.fi-press::before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:linear-gradient(90deg,#c4a16c80,#b5d6ff40,transparent)}
.fi-press .eyebrow{color:#dec498}
.press-heading-side{max-width:410px;justify-self:end;color:#c3d5ee;font-size:14px;line-height:2.05}
.press-origin{display:flex;align-items:center;gap:13px;color:#e4cfa9;font:10px/1.8 var(--mono);letter-spacing:.08em;margin-top:18px}
.press-origin::before{content:"";height:1px;width:35px;background:#cfb486}
.press-controls{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:25px;padding-block:21px;border-block:1px solid #b9d2f142;margin-bottom:30px}
.press-filter-buttons{display:flex;flex-wrap:wrap;gap:9px}
.press-filter-buttons button{font-size:11px;line-height:1.8;min-height:44px;padding:9px 15px;border:1px solid #b8d1f14d;color:#d0e1f7;transition:background .2s,color .2s,border-color .2s}
.press-filter-buttons button:hover{border-color:#ddc296;color:#fff1d4}
.press-filter-buttons button[aria-pressed=true]{background:#eaf2fd;border-color:#eaf2fd;color:#174781}
.press-search{display:flex;align-items:center;gap:11px;width:220px;min-height:42px;border-bottom:1px solid #acc8eb88;padding-inline:3px;color:#c8dcf5}
.press-search svg{width:18px;flex:none}
.press-search input{width:100%;height:42px;font-size:12px;background:transparent;border:0;color:#fff;padding:9px 0}
.press-search input::placeholder{color:#aec8e8;opacity:1}
.press-count{font:10px/1.9 var(--mono);color:#aec7e9;margin-bottom:22px}
.press-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 27px}
.press-card{min-width:0;display:flex;flex-direction:column;position:relative}
.press-card>a{display:flex;flex-direction:column;height:100%;padding-bottom:24px;border-bottom:1px solid #b1cced4d;transition:border-color .2s}
.press-image{position:relative;background:#eef3fa;aspect-ratio:16/10;overflow:hidden;display:block;border:1px solid #c8dcf344}
.press-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:none}
.press-image::after{content:"↗";position:absolute;right:13px;bottom:13px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;border:1px solid #d6b57b80;background:#082d62d9;color:#fff3d9;font:22px/1 var(--latin);transition:background .2s}
.press-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;font-size:10px;line-height:1.9;color:#d9c39c}
.press-card-meta time{font:10px/1.9 var(--mono);color:#b3c9e6}
.press-card h3{font-size:18px;line-height:1.9;letter-spacing:-.015em;margin-top:12px;text-wrap:pretty}
.press-card-summary{font-size:13px;line-height:2;color:#b8cfea;margin-top:12px}
.press-card-cta{display:flex;align-items:center;gap:14px;margin-top:auto;padding-top:21px;font-size:11px;color:#e6cfa7}
.press-card-cta>span{font:18px/1 var(--latin)}
.press-card>a:hover{border-color:#e0c18e}
.press-card>a:hover .press-image::after{background:#0b56a1}
.press-card>a:hover h3{color:#f4dfba}
.press-empty{padding:36px 20px;text-align:center;border:1px solid #b5d0f045}
.press-empty p{font-size:14px;color:#c9d9ee}
.press-empty button{margin-top:20px;min-height:44px;color:#e1c597;border-bottom:1px solid #d4b17c}
.press-bottom{display:flex;justify-content:space-between;gap:28px;align-items:center;margin-top:37px}
.press-more{display:flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #d0b78480;min-height:54px;padding:12px 25px;font-size:12px;color:#f2dfbd;background:#d7e9ff09}
.press-more>span{font:23px/1 var(--latin)}
.press-more:hover{background:#e7efff16}
.press-all{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:12px;border-bottom:1px solid #b9d0eb60;color:#dce7f7}
.press-all>span:not(.sr-only){font:21px/1 var(--latin)}
.press-footnote{font-size:11px;color:#a9c3e5;margin-top:30px;line-height:1.95;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* The region image and the route remain distinct, with no overlapping text. */
.fi-regions{padding-block:90px 0;background:linear-gradient(155deg,#0a387b,#084996 55%,#072e67);color:#fff;position:relative;overflow:hidden;--focus-color:#ebcfa0}
.fi-regions .eyebrow{color:#dcc59e}
.fi-regions .section-heading{margin-bottom:30px}
.region-intro{max-width:400px;justify-self:end;font-size:14px;line-height:2.05;color:#c9dbf2}
.region-intro .small-note{font-size:12px;color:#acc8e9;margin-top:12px}
.region-visual{position:relative;border:1px solid #accded42}
.region-visual img{width:100%;height:auto}
.regional-route{position:relative;margin-top:20px}
.network-diagram{width:100%;height:auto;pointer-events:none;opacity:.9}
.network-guide{stroke:#b6d9fb;stroke-opacity:.12;stroke-width:1}
.network-route{stroke:url(#network-gradient);stroke-width:1.8}
.network-signal{stroke:#fff0ce;stroke-width:2.6;stroke-dasharray:9 1300;stroke-linecap:round;animation:network-flow 15s linear infinite;animation-play-state:paused}
.regions-section.in-view .network-signal{animation-play-state:running}
.network-node>circle:first-child{stroke:#aecdff8c;stroke-width:1;fill:#cce5ff08;transition:fill .2s,stroke .2s}
.network-node>circle:nth-child(2){fill:#e6c68f}
.network-node>path{stroke:#bfd9ff40;stroke-width:1}
.network-node-current>circle:nth-child(2){fill:#dc907c}
.network-node.is-emphasized>circle:first-child{fill:#d7eaff24;stroke:#ffe6b9}
.journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid #c2d7f33d;background:#d3e6ff05}
.journey-stop{display:flex;flex-direction:column;align-items:center;position:relative;min-height:133px;padding:19px 12px;border-right:1px solid #c2d7f326;transition:background .2s}
.journey-stop:first-child{border-left:1px solid #c2d7f326}
.journey-stop:hover,.journey-stop:focus-visible{background:#cee5ff13}
.journey-number{font:9px/1.7 var(--mono);color:#abc6e9}
.journey-dot{display:none}
.journey-name{font-size:30px;line-height:1.7;margin-top:5px}
.journey-date{font:10px/1.8 var(--mono);color:#d9c7a4;margin-top:4px}
.live-label{position:absolute;bottom:9px;right:12px;font-size:9px;color:#f0bca9}
.region-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:27px 46px;font-size:16px;color:#cddff5}
.region-bottom>a{display:flex;align-items:center;gap:20px;font-size:12px;border-bottom:1px solid #d9be8b80;min-height:44px;color:#ecd6b0}
.region-bottom>a>span{font:22px/1 var(--latin)}
.regional-brand-story{--focus-color:#0a54be;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:60px;align-items:center;padding:42px 50px;margin-bottom:60px;color:#234267;background:#f9fbff;border:1px solid #c6daf1}
.tsunagari-logo{width:300px;height:auto;margin-bottom:22px}
.regional-brand-copy h3{font-size:26px}
.regional-brand-copy>p{font-size:13px;line-height:2;color:#657b96;margin-top:13px;max-width:560px}
.regional-brand-mascots{max-width:260px;width:100%;justify-self:center}
.regional-brand-mascots img{width:100%;height:auto}
.regional-brand-mascots figcaption{font-size:10px;text-align:center;color:#75869a;margin-top:6px}

/* A light, readable chronology alongside the anniversary dates. */
.fi-history{padding-block:98px 88px;background:linear-gradient(140deg,#fff,#eef3f9);position:relative;overflow:clip}
.history-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:85px;align-items:start}
.history-header{position:sticky;top:calc(var(--header-h) + 40px);align-self:start;max-width:570px;padding-bottom:25px}
.history-header h2{margin-top:22px}
.history-header>p:not(.eyebrow){font-size:14px;line-height:2.05;color:#62768e;max-width:430px;margin-top:25px}
.history-years{display:flex;flex-direction:column;gap:18px;align-items:flex-start;margin-top:35px;color:#9c7c49;font:clamp(74px,7.2vw,102px)/1.05 var(--latin);letter-spacing:-.05em}
.history-years>i{height:29px;width:1px;margin-left:6px;background:#c0ae92}
.history-header .text-link{margin-top:31px}
.timeline{list-style:none;padding:0;margin-top:9px}
.timeline>li{display:grid;grid-template-columns:74px minmax(0,1fr);gap:18px;min-width:0}
.timeline-year{font:26px/1.5 var(--latin);color:#9c7d4e;letter-spacing:-.02em}
.timeline-body{padding:0 0 35px 28px;position:relative;border-left:1px solid #c5d3e2}
.timeline-body::before{content:"";position:absolute;top:12px;left:-5px;width:9px;height:9px;border:1px solid #a48b61;background:#fff;border-radius:50%}
.timeline>li:last-child .timeline-body{padding-bottom:0}
.timeline>li:last-child .timeline-body::before{background:#bc816e;border-color:#bc816e}
.timeline-body>.mono{font-size:10px;color:#7d8ea4}
.timeline-body h3{font-size:22px;line-height:1.7;margin-top:10px}
.timeline-body>p:not(.mono){font-size:13px;line-height:2.05;color:#63778f;margin-top:12px}
.source-link{font-size:11px;font-weight:400;margin-top:11px}
.history-signature-wrap{margin-top:58px}
.history-signature{display:flex;align-items:center;gap:50px;padding:16px 50px 16px 16px;border:1px solid #c6d5e5;background:#fff;box-shadow:0 18px 38px #254e7e08}
.history-signature>img{width:52%;height:auto}
.history-signature figcaption{display:flex;flex:1;flex-direction:column;gap:19px;padding-left:40px;border-left:1px solid #d2c1a5}
.signature-kicker{font:9px/1.7 var(--latin);letter-spacing:.15em;color:#89764f}
.history-signature strong{font-size:32px;font-weight:400;color:#254c78}
.signature-date{font:11px/1.8 var(--mono);color:#738197;white-space:nowrap}

/* A photographic album with complete frames and aligned captions. */
.fi-memories{padding-block:93px 60px;background:#fff;position:relative;overflow:hidden}
.album{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:53px 30px;align-items:start;counter-reset:album}
.album>figure{counter-increment:album;min-width:0}
.album-1{grid-column:1/8}
.album-2{grid-column:9/13;margin-top:75px}
.album-3{grid-column:2/6;margin-top:28px}
.album-4{grid-column:7/13}
.album .photo-button{box-shadow:0 17px 32px #153d6911}
.album figcaption{position:relative;display:flex;flex-direction:column;gap:7px;padding-left:34px;margin-top:16px}
.album figcaption::before{content:"0" counter(album);position:absolute;left:0;top:0;font:10px/1.9 var(--mono);color:#967849}
.album figcaption>span:first-child{font-size:14px;line-height:1.8;color:#355778}
.album figcaption>span:last-child{font:10px/1.9 var(--mono);color:#7b8ba1}
.memories-sign{font:clamp(32px,7vw,100px)/1.15 var(--latin);font-weight:700;letter-spacing:-.045em;color:#e9eef5;margin-top:53px;padding-bottom:24px;border-bottom:1px solid #d8e1ec;white-space:normal}

/* One blue glass sculpture, one clearly attributed project outcome. */
.fi-support{padding-block:87px;background:radial-gradient(ellipse at 70% 28%,#155799,#07316c 70%);color:#fff;position:relative;overflow:hidden;--focus-color:#ebcfa0}
.fi-support .eyebrow{color:#dac096}
.fi-support-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:50px;align-items:center}
.support-copy h2{margin-top:22px}
.support-copy>p:not(.eyebrow){font-size:14px;line-height:2.1;max-width:460px;color:#cadcf2;margin-top:25px}
.support-copy .text-link{margin-top:24px;color:#eed5aa;border-color:#d3b17a80}
.support-result-side .text-link{margin-top:14px;color:#eed5aa;border-color:#d3b17a80}
.support-visual{position:relative;min-width:0}
.support-visual img{width:100%;height:auto;filter:drop-shadow(0 20px 25px #001e5333)}
.support-result{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;padding-top:30px;margin-top:25px;border-top:1px solid #ddc89b66}
.support-total>p:first-child{font-size:13px;color:#d7e6fa}
.result-label{font-size:11px;color:#acc8e9;display:block;margin-top:16px}
.result-value{font:clamp(55px,6.4vw,92px)/1.25 var(--latin);letter-spacing:-.035em;color:#e9d1a2;margin-top:6px;white-space:nowrap}
.result-value>span{font-family:var(--sans);font-size:22px;letter-spacing:0;margin-left:12px}
.support-result-side{border-left:1px solid #bdd3ef40;padding:7px 0 0 30px}
.support-sub{display:flex;flex-direction:column;gap:10px;font-size:12px;color:#d0e1f8}
.support-sub strong{font:37px/1.4 var(--latin);color:#e8d1a6;margin-inline:8px}
.support-sub .mono{font-size:10px;color:#bdd1ed}
.support-result-side .small-note{font-size:13px;line-height:2;color:#b7cee8;margin-top:15px;max-width:390px}

/* The activity index is a white reading surface with a quiet search console. */
.fi-archive{padding-block:91px 83px;background:#f3f6fa;position:relative;overflow:hidden}
.fi-archive .section-heading{margin-bottom:33px}
.archive-heading-side{display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0}
.archive-search-visual{width:190px;max-width:52%;height:auto;flex:none}
.archive-heading-side .section-note{font-size:13px;max-width:200px}
.archive-filter{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.85fr) auto;gap:23px;align-items:end;padding:24px 28px;border:1px solid #c7d5e5;border-top:2px solid #ac9267;background:#fff;box-shadow:0 14px 28px #274d7510}
.archive-filter>label{display:flex;flex-direction:column;gap:9px;font-size:11px;line-height:1.8;min-width:0;color:#516b88}
.search-field{display:flex;align-items:center;gap:11px;min-height:50px;border-bottom:1px solid #b7c7da;background:#f4f7fb;padding-inline:12px;color:#285c9b}
.search-field svg{flex:none}
.search-field input{width:100%;height:50px;padding:10px 0;border:0;background:transparent;font-size:14px;color:#1b426f}
.search-field input::placeholder{color:#7c8c9f;font-size:12px;opacity:1}
.archive-filter select{width:100%;min-height:51px;padding:10px 12px;border:0;border-bottom:1px solid #b7c7da;background:#f4f7fb;font-size:13px;color:#294c73;cursor:pointer}
.archive-filter option{background:#fff;color:#173b65}
.filter-reset{min-height:51px;padding-inline:5px;font-size:11px;color:#44698f;border-bottom:1px solid #afc1d5}
.filter-reset:hover{color:#0664c4;border-color:#0664c4}
.archive-result-head{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:27px 16px;font-size:11px;color:#6b819b}
.archive-result-head>span{font-size:10px;color:#7f92a8}
.record-list{list-style:none;padding:0}
.record-row{border-bottom:1px solid #cbd8e7}
.record-open{display:grid;grid-template-columns:125px minmax(0,1fr) 44px;gap:30px;align-items:center;width:100%;min-height:143px;padding:24px 4px;transition:background .2s}
.record-open:hover{background:#eaf0f7}
.record-date{font:11px/1.9 var(--mono);color:#85724f;align-self:start;margin-top:3px}
.record-main{display:block;min-width:0}
.record-meta{display:block;font-size:10px;line-height:1.9;color:#8b734d}
.record-meta>span{color:#7c8fa7}
.record-title{display:block;font-size:21px;line-height:1.8;font-weight:700;color:#1c406c;margin-top:7px;word-break:auto-phrase;text-wrap:pretty}
.record-summary{display:block;font-size:13px;line-height:2;color:#627a95;max-width:820px;margin-top:8px;word-break:auto-phrase;text-wrap:pretty}
.record-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b8c9df;border-radius:50%;font:24px/1 var(--latin);color:#305d92;transition:background .2s,color .2s}
.record-open:hover .record-arrow{background:#0b4d9b;color:#fff;border-color:#0b4d9b}
.show-more{display:flex;align-items:center;justify-content:space-between;gap:30px;width:min(320px,100%);min-height:56px;margin:34px auto 0;padding:12px 24px;border:1px solid #b49a70;background:#fff;font-size:12px;color:#355a83;transition:background .2s}
.show-more>span{font-size:21px}
.show-more:hover{background:#e7eff9}
.empty-state{padding:42px 25px;text-align:center;border:1px solid #b8cbe0;background:#fff}
.empty-state h3{font-size:22px}
.empty-state>p{font-size:14px;color:#6a809b;margin-top:16px}
.empty-state .text-link{margin-top:24px}
.archive-footnote{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:31px;font-size:10px;line-height:1.9;color:#7a8ea7}
.fi-archive noscript p{font-size:13px;margin-top:24px}.fi-archive noscript a{text-decoration:underline}

/* The optical horizon closes the archive, not a oversized repeated sales panel. */
.fi-closing{padding-block:90px 55px;position:relative;isolation:isolate;overflow:hidden;background:#083c84;color:#fff;min-height:720px;--focus-color:#ebcfa0}
.closing-space{position:absolute;inset:0;z-index:-2;pointer-events:none}
.closing-space picture{display:block;width:100%;height:100%}
.closing-space img{width:100%;height:100%;object-fit:cover;object-position:65% center}
.fi-closing::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#073474b3,#07347447 52%,transparent 78%),linear-gradient(0deg,#052a61,transparent 35%)}
.fi-closing>.section-wrap>.eyebrow{color:#e3c795}
.closing-layout{margin-top:25px}
.closing-copy h2{font-size:clamp(40px,4.9vw,72px);max-width:750px;line-height:1.55}
.closing-copy>p{font-size:14px;line-height:2.1;color:#d6e5fa;max-width:500px;margin-top:25px}
.closing-contact{display:flex;align-items:center;justify-content:space-between;gap:26px;width:min(620px,66%);min-height:93px;margin-top:39px;padding:21px 26px;border:1px solid #dbc1958c;background:#dceeff13;backdrop-filter:blur(15px);font-size:20px;line-height:1.8;transition:background .2s}
.closing-contact:hover{background:#d7e9ff26}
.closing-arrow{display:grid;place-items:center;flex:none;width:46px;height:46px;border:1px solid #ead1a29e;border-radius:50%;font:29px/1 var(--latin);color:#fff0d2}
.closing-next{font:clamp(100px,15vw,225px)/1 var(--latin);font-weight:700;letter-spacing:-.065em;color:#c2d7ff20;display:flex;align-items:center;gap:30px;margin-top:34px;pointer-events:none}
.next-dot{width:12px;height:12px;border-radius:50%;background:#cb8b73;box-shadow:0 0 20px #eac58750}

/* A considered footer directory, with the newest refined FI NEXT mark. */
.site-footer{padding-block:40px 25px;background:#062756;color:#fff;border-top:1px solid #bdd8f32c}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:36px}
.footer-label{font:9px/1.9 var(--mono);letter-spacing:.1em;color:#cbb692}
.back-top{display:flex;align-items:center;gap:17px;font-size:11px;color:#c5d9f0;min-height:44px}
.back-top>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b2cce865;border-radius:50%;font:22px/1 var(--latin);transition:background .2s,color .2s}
.back-top:hover>span{background:#e5cca0;color:#064084}
.footer-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:80px;align-items:start}
.footer-identity{padding-top:13px}
.site-footer .anniversary-next-logo{width:min(330px,100%)}
.footer-identity>p{font-size:12px;color:#b7cce6;margin-top:26px;max-width:320px}
.footer-period{display:flex;align-items:center;gap:18px;max-width:320px;margin-top:23px;font:9px/1.9 var(--mono);color:#cbb996}
.footer-period>i{height:1px;flex:1;min-width:20px;background:#a9bfd833}
.footer-signal{display:block;width:5px;height:5px;border-radius:50%;background:#c4876f;margin-top:30px}
.footer-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;min-width:0}
.footer-directory>a{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 23px;gap:4px 15px;min-height:115px;padding-block:19px;border-top:1px solid #bad3ef33;transition:border-color .2s;min-width:0}
.footer-directory>a>span{grid-column:1;grid-row:1;font:8px/1.8 var(--mono);letter-spacing:.05em;color:#c5b28d}
.footer-directory strong{grid-column:1;grid-row:2;font-size:14px;line-height:1.8;font-weight:400;letter-spacing:0;word-break:auto-phrase;overflow-wrap:anywhere}
.footer-directory small{grid-column:1;grid-row:3;font-size:11px;line-height:1.9;color:#9eb8d9;word-break:auto-phrase}
.footer-directory i{grid-column:2;grid-row:1/4;align-self:center;font:24px/1 var(--latin);font-style:normal;color:#cbb28a}
.footer-directory>a:hover{border-color:#d0b285;color:#f0d7ac}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:35px;padding-top:23px;border-top:1px solid #a8c4e32b;font-size:10px;color:#91add0}
.footer-links a{display:inline-flex;align-items:center;min-height:44px}
.copyright{font:9px/1.8 var(--latin);letter-spacing:.06em}
.site-footer :focus-visible{--focus-color:#ebcfa0}

/* Readable activity details, including the preserved sources and role attribution. */
#record-dialog{--focus-color:#0d53b2;width:min(920px,calc(100% - 48px));max-height:calc(100svh - 56px);border:1px solid #b8c9dc;border-top:2px solid #c0a271;background:#fbfdff;padding:30px 44px 40px;color:#173550;box-shadow:0 40px 130px #00132e60;overflow-y:auto;overscroll-behavior:contain}
#record-dialog::backdrop{background:#04245bbd;backdrop-filter:blur(13px)}
.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid #c6d3e3;padding-bottom:21px;margin-bottom:25px}
.dialog-top>.eyebrow{font-size:9px;color:#5c7a9e}
.dialog-close{display:flex;align-items:center;justify-content:flex-end;gap:20px;min-height:44px;min-width:86px;font-size:12px;color:#4c688b}
.dialog-close>span{font:28px/1 var(--latin)}
.dialog-meta{font-size:11px;color:#0756b7;margin-bottom:12px}
.dialog-content h2{font-size:31px;line-height:1.7;max-width:none;letter-spacing:-.025em}
.dialog-official{font-size:13px;color:#66809d;margin-top:13px}
.dialog-date{font:10px/1.9 var(--mono);color:#5b7592;margin-top:11px}
.dialog-photo{margin-top:26px}.dialog-photo img{width:100%;height:auto}
.dialog-photo figcaption{font-size:10px;color:#7085a1;margin-top:10px}
.dialog-text{font-size:14px;line-height:2.15;color:#3f5c79;margin-top:27px}.dialog-text>p+p{margin-top:17px}
.dialog-role{display:grid;grid-template-columns:112px minmax(0,1fr);gap:22px;border-block:1px solid #c7d2e0;margin-top:28px;padding-block:22px;font-size:12px;line-height:2}
.dialog-role dt{color:#0756b7}.dialog-role dd{margin:0;color:#476682}
.dialog-metrics{display:flex;flex-wrap:wrap;gap:25px 50px;margin-top:23px}
.dialog-metric{display:flex;flex-direction:column;gap:7px}
.dialog-metric strong{font:29px/1.4 var(--latin);color:#0d52a9;word-break:normal}
.dialog-metric>span{font-size:11px;color:#556e8a}.dialog-metric>span:last-child{font-size:10px;color:#7e90a6}
.dialog-note{font-size:11px;line-height:2;color:#6f85a1;border-left:2px solid #ccb17c;padding-left:16px;margin-top:26px}
.dialog-source{display:flex;justify-content:space-between;align-items:center;gap:22px;font-size:12px;line-height:2;padding-block:17px;border-bottom:1px solid #b8c9dc;color:#0b52aa;margin-top:11px}
.dialog-source>span:not(.sr-only){font:23px/1 var(--latin)}
.dialog-source:hover{color:#043778;border-color:#054dae}
.fi-reveal.is-revealed{animation:fi-reveal .7s ease both}
@keyframes fi-reveal{from{opacity:.65;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes network-flow{from{stroke-dashoffset:1330}to{stroke-dashoffset:0}}

@media(max-width:1180px){
 :root{--gutter:36px}
 .main-nav{position:absolute;left:var(--gutter);right:var(--gutter);top:calc(100% + 10px);display:none;flex-direction:column;align-items:stretch;gap:0;padding:16px 25px 23px;background:#073574fa;border:1px solid #b8d5fa68;box-shadow:0 25px 60px #001c5d40;max-height:calc(100svh - 120px);overflow-y:auto}
 .main-nav.is-open{display:flex}.main-nav>a{font-size:15px;padding-block:14px;border-bottom:1px solid #b3ccef2b;white-space:normal}.main-nav>a::after{display:none}
 .main-nav .nav-archive{font-size:15px;margin-top:18px;justify-content:space-between;padding:12px 14px 12px 20px}
 .menu-toggle{display:flex;align-items:center;justify-content:center;gap:14px;min-height:44px;min-width:94px;font-size:11px}
 .origin-inner{gap:28px 45px}.origin-heading h2{font-size:40px}.origin-copy{font-size:13px}
 .technology-stage{gap:35px}.technology-letters{font-size:65px}.technology-images{gap:20px}.work-development{margin-top:85px}
 .story-primary{gap:40px}.story-copy h3{font-size:26px}.story-editorial{gap:50px 35px}
 .press-controls{align-items:flex-start}.press-search{margin-left:auto}.press-filter-buttons{gap:7px}.press-filter-buttons button{padding-inline:11px}
 .press-grid{gap:33px 22px}.press-card h3{font-size:17px}.press-card-summary{font-size:12px}
 .history-grid{gap:55px}.history-header h2{font-size:40px}.timeline>li{grid-template-columns:64px minmax(0,1fr);gap:15px}.timeline-body{padding-left:24px}
 .footer-layout{gap:50px}.result-value{font-size:clamp(46px,6.3vw,75px)}
}
@media(max-width:950px){
 .section-heading{gap:30px}.section-heading h2{font-size:37px}
 .press-ribbon-inner{grid-template-columns:125px minmax(0,1fr);gap:22px}.press-ribbon-more{display:none}.press-ribbon-news{align-items:flex-start;flex-direction:column;gap:4px}
 .origin-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px 32px}.origin-heading h2{font-size:36px}.origin-copy{font-size:13px}.origin-copy .intro-first{font-size:14px}.origin-space figcaption{flex-direction:column;gap:4px}
 .origin-connection{gap:20px}.origin-connection-label{display:none}.origin-connection>div{gap:12px}.origin-connection strong{font-size:22px}
 .technology-stage{grid-template-columns:1fr;gap:30px}.technology-letters{flex-direction:row;align-items:center;justify-content:space-between;font-size:56px}.technology-letters>i{width:40px;transform:rotate(-25deg)}.technology-letters>small{display:none}.technology-images{grid-template-columns:1.45fr 1fr}.work-development{margin-top:70px}
 .opening-inner{grid-template-columns:1.55fr 1fr;gap:30px}.opening-copy h2{font-size:32px}.opening-copy .eyebrow{font-size:8px}.opening-scene figcaption{flex-direction:column;gap:4px}
 .story-primary{grid-template-columns:1.15fr 1fr;gap:30px}.story-primary .story-copy::before{font-size:50px;margin-bottom:18px}.story-copy h3{font-size:23px}.story-copy>p:not(.story-place){font-size:13px}.story-copy .text-link{margin-top:18px}
 .story-bridge{grid-template-columns:30px minmax(0,1fr);gap:20px;padding:28px}.story-bridge>div:last-child{grid-column:2}.story-bridge h3{font-size:23px}
 .press-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 27px}.press-card h3{font-size:18px}.press-card-summary{font-size:13px}
 .regional-brand-story{gap:35px;padding:35px}.regional-brand-copy h3{font-size:24px}.tsunagari-logo{width:270px}
 .history-grid{display:block}.history-header{position:relative;top:auto;max-width:700px;padding:0}.history-header h2{font-size:40px}.history-header>p:not(.eyebrow){max-width:590px}
 .history-years{flex-direction:row;align-items:center;gap:28px;font-size:65px;margin-top:28px}.history-years>i{width:60px;height:1px;margin:0}.history-header .text-link{margin-top:25px}.timeline{margin-top:55px;max-width:840px}.timeline>li{grid-template-columns:75px minmax(0,1fr);gap:24px}
 .history-signature{gap:30px;padding-right:30px}.history-signature figcaption{padding-left:28px}.history-signature strong{font-size:26px}
 .fi-support-grid{gap:25px;grid-template-columns:1fr 1fr}.support-copy h2{font-size:36px}.support-result{gap:30px}.support-result-side{padding-left:25px}
 .archive-filter{grid-template-columns:1.5fr 1fr 1fr;gap:18px}.filter-reset{grid-column:3;justify-self:end;min-height:44px;border:0}.archive-search-visual{width:170px}.record-open{grid-template-columns:105px minmax(0,1fr) 42px;gap:23px}.record-title{font-size:19px}
 .footer-layout{grid-template-columns:1fr 1.25fr;gap:38px}.footer-directory{grid-template-columns:1fr}.footer-directory>a{min-height:99px}.site-footer .anniversary-next-logo{width:min(285px,100%)}
}
@media(max-width:700px){
 :root{--gutter:23px;--header-h:70px}
 h2{font-size:clamp(29px,8vw,43px);line-height:1.6}.eyebrow{font-size:9px;letter-spacing:.07em}.section-heading{display:block;margin-bottom:34px}.section-heading h2{font-size:clamp(29px,8vw,43px);margin-top:19px}.section-note{max-width:600px;font-size:14px;line-height:2;margin-top:20px}
 .anniversary-next-logo{width:184px}.menu-toggle{min-width:86px;gap:13px;font-size:10px}
 .press-ribbon-inner{grid-template-columns:1fr;gap:14px;min-height:0;padding-block:24px}.press-ribbon-label{display:flex;align-items:center;gap:15px}.press-ribbon-label>strong{font-size:11px}.press-ribbon-label>span{font-size:8px}.press-ribbon-news{font-size:13px;gap:5px}.press-ribbon-news time{font-size:10px}
 .origin-inner{grid-template-columns:1fr;gap:28px;padding-block:65px 43px}.origin-heading{grid-column:1;grid-row:1}.origin-heading h2{font-size:clamp(29px,8vw,43px);margin-top:20px}.origin-years{font-size:13px;margin-top:21px}
 .origin-space{grid-column:1;grid-row:2;margin:3px 10px 0 0}.origin-space::before{inset:-10px -10px 44px 15px}.origin-copy{grid-column:1;grid-row:3;font-size:14px;max-width:650px}.origin-copy .intro-first{font-size:15px}.origin-connection{grid-row:4;margin-top:3px;padding-top:24px;gap:17px}.origin-connection>div{flex-direction:column;align-items:flex-start;gap:7px}.origin-connection>div>span{font-size:8px}.origin-connection strong{font-size:22px}.origin-connection>i{min-width:15px}
 .fi-technology{padding-block:65px}.technology-top{display:block}.technology-top h2{margin-top:20px}.technology-top>p{font-size:14px;max-width:600px;margin-top:21px}.technology-stage{margin-top:32px;gap:27px}.technology-letters{font-size:clamp(35px,10vw,58px);gap:15px}.technology-letters>i{width:22px}.technology-images{display:flex;flex-direction:column;gap:31px}.work-design{width:100%}.work-development{margin:0;width:83%;align-self:flex-end}.technology-images figcaption strong,.work-development figcaption strong{font-size:18px}.work-image-kind{font-size:11px}
 .fi-opening{padding-block:58px}.opening-inner{display:flex;flex-direction:column;gap:30px;align-items:stretch}.opening-copy{order:0}.opening-copy h2{font-size:clamp(29px,8vw,43px);margin-top:20px;max-width:650px}.opening-copy .eyebrow{font-size:9px}.opening-axis,.opening-word{display:none}.opening-scene{order:1}.opening-scene figcaption{font-size:12px;gap:5px}
 .fi-stories{padding-block:65px}.story-editorial{grid-template-columns:1fr;gap:45px}.story-primary{grid-column:1;display:flex;flex-direction:column;gap:26px;align-items:stretch}.story-primary .story-copy::before{display:none}.story-copy h3,.story-learning h3,.story-kindness h3{font-size:clamp(23px,6.4vw,31px);margin-top:17px}.story-copy>p:not(.story-place){font-size:14px;line-height:2.1;margin-top:18px}.story-place{font-size:9px}.story-copy .text-link{margin-top:21px}
 .story-learning,.story-kindness{gap:25px;padding-top:29px}.learning-pair{gap:20px}.learning-pair .shop-photo{margin-top:35px}.story-kindness .story-photo{margin-top:0}.story-learning .story-copy,.story-kindness .story-copy{padding-top:0}.story-bridge{margin-top:43px;padding:25px 21px;gap:19px}.story-bridge h3{font-size:22px}.story-bridge>div:last-child>p{font-size:13px}
 .fi-press{padding-block:65px 61px}.press-heading-side{font-size:14px;margin-top:22px;max-width:600px}.press-origin{font-size:9px;margin-top:16px}.press-controls{padding-block:20px;gap:19px;margin-bottom:22px}.press-filter-buttons{gap:7px;width:100%}.press-filter-buttons button{min-height:44px;font-size:11px;padding:9px 11px}.press-search{margin:0;width:100%}.press-search input{font-size:16px}.press-count{font-size:10px;margin-bottom:19px}
 .press-grid{grid-template-columns:1fr;gap:29px}.press-card h3{font-size:18px;line-height:1.9}.press-card-summary{font-size:13px}.press-card-meta{font-size:11px;margin-top:17px}.press-card-meta time{font-size:11px}.press-card-cta{font-size:12px;padding-top:18px}.press-card>a{padding-bottom:25px}.press-image{aspect-ratio:16/10}.press-bottom{flex-direction:column;align-items:stretch;gap:24px;margin-top:28px}.press-more{font-size:13px;min-height:56px}.press-all{align-self:flex-start;font-size:12px}.press-footnote{font-size:11px;gap:9px;margin-top:24px;flex-direction:column}
 .fi-regions{padding-top:65px}.region-intro{font-size:14px;line-height:2.1;max-width:600px;margin-top:22px}.region-intro .small-note{font-size:12px}.regional-route{margin-top:0}.network-diagram{display:none}.journey{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.journey-stop{min-height:136px;border-top:1px solid #c2d7f33d;border-left:1px solid #c2d7f326;padding-block:20px}.journey-stop:last-child{grid-column:1/-1;min-height:126px}.journey-name{font-size:30px}.journey-date{font-size:11px}.live-label{font-size:10px;bottom:12px;right:16px}
 .region-bottom{align-items:flex-start;flex-direction:column;gap:18px;padding-block:25px 36px;font-size:16px}.regional-brand-story{grid-template-columns:1fr;gap:24px;padding:28px 25px;margin-bottom:42px}.tsunagari-logo{width:min(290px,100%);margin-bottom:20px}.regional-brand-copy h3{font-size:23px}.regional-brand-copy>p{font-size:13px}.regional-brand-mascots{max-width:240px}.regional-brand-mascots figcaption{font-size:11px}
 .fi-history{padding-block:65px}.history-header h2{font-size:clamp(29px,8vw,43px);margin-top:20px}.history-header>p:not(.eyebrow){font-size:14px;margin-top:21px}.history-years{font-size:clamp(42px,12vw,68px);gap:22px;margin-top:28px}.history-years>i{width:40px}.history-header .text-link{margin-top:24px}.timeline{margin-top:43px}.timeline>li{grid-template-columns:50px minmax(0,1fr);gap:17px}.timeline-year{font-size:22px}.timeline-body{padding-left:22px;padding-bottom:31px}.timeline-body h3{font-size:21px;line-height:1.75}.timeline-body>p:not(.mono){font-size:14px;line-height:2.1}.source-link{font-size:12px}
 .history-signature-wrap{margin-top:40px}.history-signature{flex-direction:column;padding:14px 16px 25px;gap:18px}.history-signature>img{width:100%}.history-signature figcaption{width:100%;border-left:0;border-top:1px solid #d9c9ab;align-items:center;text-align:center;padding:21px 0 0;gap:12px}.history-signature strong{font-size:26px}.signature-date{font-size:10px}
 .fi-memories{padding-block:65px 42px}.album{grid-template-columns:repeat(6,minmax(0,1fr));gap:31px 16px}.album-1{grid-column:1/-1}.album-2{grid-column:2/7;margin:0}.album-3{grid-column:1/6;margin:0}.album-4{grid-column:1/-1}.album figcaption{padding-left:31px;gap:5px;margin-top:14px}.album figcaption>span:first-child{font-size:13px}.album figcaption>span:last-child{font-size:10px}.memories-sign{font-size:clamp(26px,7.5vw,52px);margin-top:36px;padding-bottom:20px}
 .fi-support{padding-block:65px}.fi-support-grid{grid-template-columns:1fr;gap:14px}.support-copy h2{font-size:clamp(30px,8.2vw,45px);margin-top:21px}.support-copy>p:not(.eyebrow){font-size:14px;margin-top:22px;max-width:620px}.support-copy .text-link{font-size:12px;margin-top:21px}.support-visual{max-width:590px;margin-inline:auto}.support-result{grid-template-columns:1fr;gap:25px;margin-top:8px;padding-top:26px}.result-value{font-size:clamp(36px,10.5vw,72px);margin-top:8px}.result-value>span{font-size:19px;margin-left:9px}.result-label{font-size:12px}.support-result-side{border-left:0;border-top:1px solid #bdd3ef40;padding:23px 0 0}.support-sub{flex-direction:row;align-items:center;flex-wrap:wrap;gap:15px;font-size:13px}.support-sub strong{font-size:35px}.support-sub .mono{font-size:11px}.support-result-side .small-note{max-width:600px;font-size:13px}
 .fi-archive{padding-block:65px}.archive-heading-side{justify-content:flex-start;gap:20px;margin-top:21px}.archive-search-visual{width:42%;max-width:190px}.archive-heading-side .section-note{font-size:13px;max-width:250px;margin:0}.archive-filter{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 15px;padding:23px 19px 18px}.archive-filter .keyword-label{grid-column:1/-1}.archive-filter>label{font-size:12px}.search-field input{font-size:16px}.search-field input::placeholder{font-size:13px}.archive-filter select{font-size:13px;padding-inline:9px}.filter-reset{grid-column:1/-1;min-height:44px;font-size:12px}
 .archive-result-head{font-size:11px;gap:15px;flex-wrap:wrap;padding-block:23px 15px}.record-open{grid-template-columns:minmax(0,1fr) 38px;gap:11px 17px;min-height:0;padding:24px 0}.record-date{grid-column:1;grid-row:1;font-size:11px;margin:0}.record-main{grid-column:1;grid-row:2}.record-arrow{grid-column:2;grid-row:1/3;width:37px;height:37px;font-size:23px}.record-title{font-size:19px;line-height:1.85}.record-summary{font-size:14px;line-height:2.05}.record-meta{font-size:11px}.show-more{font-size:13px;margin-top:29px;min-height:58px}.archive-footnote{font-size:11px;flex-direction:column;gap:9px;margin-top:26px}
 .fi-closing{display:flex;flex-direction:column;padding-block:64px 25px;min-height:0}.fi-closing::before{display:none}.fi-closing>.section-wrap{display:contents}.fi-closing>.section-wrap>.eyebrow{order:0;position:relative;width:calc(100% - var(--gutter)*2);margin-inline:auto}.closing-layout{order:1;width:calc(100% - var(--gutter)*2);margin-inline:auto;margin-top:22px}.closing-copy h2{font-size:clamp(33px,9vw,55px)}.closing-copy>p{font-size:14px;margin-top:22px;max-width:620px}
 .closing-space{order:2;position:relative;inset:auto;width:100%;margin-top:27px;z-index:0}.closing-space picture{height:auto}.closing-space img{width:100%;height:auto;object-fit:initial}.closing-space::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#083c84,transparent 19%,transparent 85%,#083c84)}
 .closing-contact{order:3;width:calc(100% - var(--gutter)*2);margin:20px auto 0;font-size:18px;line-height:1.85;min-height:93px;padding:20px;gap:18px}.closing-arrow{width:42px;height:42px;font-size:27px}.closing-next{order:4;width:calc(100% - var(--gutter)*2);margin-inline:auto;font-size:clamp(85px,25vw,158px);gap:23px;margin-top:30px}.next-dot{width:10px;height:10px}
 .site-footer{padding-block:31px 23px}.footer-top{padding-bottom:29px;gap:16px}.footer-label{font-size:7px;max-width:145px}.back-top{font-size:10px;gap:12px}.back-top>span{width:38px;height:38px}.footer-layout{grid-template-columns:1fr;gap:34px}.footer-identity{padding-top:0}.site-footer .anniversary-next-logo{width:min(280px,100%)}.footer-identity>p{font-size:12px;margin-top:24px}.footer-period{font-size:9px;max-width:300px}.footer-signal{display:none}.footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 21px}.footer-directory>a{min-height:125px;padding-block:19px;gap:6px 8px}.footer-directory strong{font-size:13px}.footer-directory small{font-size:11px}.footer-directory>a>span{font-size:8px}.footer-directory i{font-size:21px}.footer-bottom{font-size:11px;flex-direction:column;align-items:flex-start;gap:10px;margin-top:27px;padding-top:18px}
 #record-dialog{width:calc(100% - 28px);max-height:calc(100svh - 30px);padding:23px 22px 30px}.dialog-top{gap:14px;padding-bottom:17px;margin-bottom:23px}.dialog-top>.eyebrow{font-size:8px}.dialog-close{gap:15px;font-size:12px;min-width:82px}.dialog-content h2{font-size:25px;line-height:1.8}.dialog-official{font-size:13px}.dialog-date{font-size:11px}.dialog-text{font-size:14px;line-height:2.2}.dialog-role{grid-template-columns:1fr;gap:8px;font-size:13px;padding-block:20px}.dialog-metrics{gap:22px 29px}.dialog-metric strong{font-size:29px}.dialog-metric>span{font-size:12px}.dialog-metric>span:last-child{font-size:11px}.dialog-note{font-size:12px}.dialog-source{font-size:13px;gap:17px}
}
@media(max-width:380px){:root{--gutter:20px}.anniversary-next-logo{width:166px}.technology-letters{font-size:35px;gap:11px}.technology-letters>i{width:17px}.origin-connection{gap:13px}.origin-connection strong{font-size:21px}.origin-connection>div>span{font-size:7px}.timeline>li{grid-template-columns:43px minmax(0,1fr);gap:14px}.timeline-body{padding-left:18px}.timeline-body h3{font-size:20px}.result-value{font-size:35px}.result-value>span{font-size:17px}.footer-directory{grid-template-columns:1fr}.footer-directory>a{min-height:100px}.closing-contact{font-size:17px;padding-inline:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.fi-reveal{opacity:1;transform:none}}

/* Approved FI Next artwork: each original keeps its complete pixels and colors. */
.origin-brand-logo{display:block;position:relative;overflow:hidden;aspect-ratio:1748/420;width:min(300px,100%);margin-top:22px;background:#fff}
.origin-brand-logo>img{display:block;position:absolute;left:-9.153318%;top:-32.142858%;width:117.162472%;max-width:none;height:auto;filter:none}
.footer-brand-panel{display:block;width:min(280px,100%);padding:0;background:#fff;border:1px solid #dbc6a6;box-shadow:0 14px 32px #00142c18}
.footer-next-logo{display:block;width:100%;aspect-ratio:4/3}
.footer-next-logo>img{display:block;width:100%;height:auto;filter:none}
.history-signature.provided-anniversary-signature{display:block;overflow:hidden;gap:0;padding:0}
.provided-anniversary-signature>.anniversary-banner{display:block;width:100%;aspect-ratio:2048/682;background:#fff}
.anniversary-banner>img{display:block;width:100%;height:auto;filter:none}
.provided-anniversary-signature figcaption{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:38px;padding:20px 28px;border-left:0;border-top:1px solid #d8c7aa;background:#fff;text-align:left}
.company-anniversary-seal{display:block;width:180px;height:auto;flex:none}
.signature-details{display:flex;flex-direction:column;gap:10px;flex:none}
.provided-anniversary-signature .signature-details>strong{font-size:25px}
.signature-brand-promise{display:flex;flex-direction:column;gap:9px;padding-left:32px;border-left:1px solid #d8c7aa;max-width:270px;line-height:1.7;color:#153a67}
.signature-brand-promise>span:first-child{font:23px/1.3 Georgia,'Times New Roman',serif;letter-spacing:.025em}
.signature-brand-promise>span:last-child{font-size:14px;letter-spacing:.08em}
@media(max-width:950px){.footer-brand-panel{width:min(280px,100%)}.provided-anniversary-signature figcaption{gap:22px;padding-inline:20px}.company-anniversary-seal{width:155px}.signature-brand-promise{padding-left:22px}.signature-brand-promise>span:first-child{font-size:21px}}
@media(max-width:700px){.origin-brand-logo{width:min(280px,100%);margin-top:20px}.footer-brand-panel{width:min(280px,100%)}.provided-anniversary-signature figcaption{flex-direction:column;gap:18px;padding:18px 20px 25px;text-align:center}.company-anniversary-seal{width:165px}.signature-details{align-items:center;gap:9px}.signature-brand-promise{align-items:center;max-width:100%;border-left:0;border-top:1px solid #d8c7aa;padding:18px 0 0;width:100%}.signature-brand-promise>span:first-child{font-size:22px}.signature-brand-promise>span:last-child{font-size:15px}}
@media(max-width:380px){.origin-brand-logo{width:min(265px,100%)}.footer-brand-panel{width:min(260px,100%)}}
