/* Boston Nexus — navy and gold institutional identity */
:root{--navy:#102541;--navy2:#183451;--gold:#dcb66f;--cream:#f7f5ef;--ink:#182a40}
body{background:var(--cream)}
.site-header{background:#102541;border-bottom:1px solid rgba(220,182,111,.32);box-shadow:0 12px 30px rgba(5,17,34,.1)}
.site-header .brand{width:min(290px,28vw)}
.site-header .brand img{filter:brightness(1.12)}
.nav a{color:#eee8dd}.nav a:hover,.nav a.active{color:#f7dba5;border-bottom-color:var(--gold)}
.hero,.hero.home{background:radial-gradient(circle at 50% 15%,#203e60 0%,#102541 48%,#0b1a30 100%);isolation:isolate}
.hero:before{border-color:rgba(235,198,127,.28);box-shadow:0 0 0 125px rgba(235,198,127,.018),0 0 0 250px rgba(235,198,127,.012)}
.hero:after{border-color:rgba(235,198,127,.23)}
.hero.home{padding-top:46px;min-height:650px}
.hero.home .hero-top{border-top-color:rgba(223,185,115,.48)}
.hero.home .hero-top span:first-child{color:#f0cc8e}
.hero.home h1{font:400 clamp(2.3rem,4.7vw,4.6rem)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.035em;text-align:center;margin:112px auto 80px;max-width:1050px;color:#fff8ec}
.hero:not(.home) h1{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em;color:#fff8ec}
.hero-bottom{border-color:rgba(228,193,129,.45)}.hero-bottom p{color:#e5e0d5}
.chapter{background:#e9e2d5;border-bottom-color:#d2bea0;color:#564a3c}
.chapter span:first-child,.eyebrow,.section-index{color:#94703e}
.photo-feature{height:clamp(390px,43vw,610px)}
.photo-feature:after{background:linear-gradient(90deg,rgba(6,21,41,.88),rgba(6,21,41,.02) 85%)}
.photo-feature .eyebrow{color:#f4cb81}
.pathways{background:#eee9df}.pathways a{border-left-color:#bea983}.pathways a:hover{background:#e2d9c8}
.pathways a strong,.pathways-heading h2,.story h2,.related-pages h2,.closing h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.story{border-color:#d9cdbc}.story:nth-child(even){background:#f0ece3}.story h2{color:#182c49}
.closing{background:#ded7ca}.closing a{border-color:#9e7944}
footer{background:#0b1b30;border-top:2px solid #bb975a}.footer-brand{color:#efd5a6}footer .copyright{border-top-color:#445065}
.footer-mark{display:block;width:min(280px,100%);height:auto;margin:0 0 22px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e7bb73;outline-offset:4px}
@media(max-width:1050px){.site-header .brand{width:220px}}
@media(max-width:850px){.site-header .brand{width:210px}.nav{background:#102541;border-bottom:1px solid #9e7944}.nav a{color:#f6eee0}}
@media(max-width:550px){.site-header .brand{width:190px}.hero.home{min-height:610px;padding-top:30px}.hero.home h1{font-size:clamp(2.05rem,8.8vw,3rem);margin:95px auto 75px}.hero:not(.home) h1{font-family:Georgia,'Times New Roman',serif}.photo-feature{height:410px}.photo-feature div{bottom:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 2026 editorial refresh: applied to every public page */
:root{--navy:#091e35;--navy2:#173956;--gold:#e3bb75;--cream:#f7f6f1;--ink:#142c43}
body{background:var(--cream);color:var(--ink)}
.site-header{height:104px;padding-inline:clamp(20px,4vw,76px);background:#091e35;position:relative;z-index:20;box-shadow:0 8px 28px #07182a24}
.site-header .brand{width:clamp(255px,30vw,390px);flex-shrink:0}
.site-header .brand img{filter:none}
.menu-toggle{border:1px solid #e3bb7580;color:#f8f1e5;letter-spacing:.07em;text-transform:uppercase;transition:background .2s,border-color .2s}
.menu-toggle:hover{background:#e3bb751a;border-color:#e3bb75}
.nav{top:104px;background:#0b2742;grid-template-columns:repeat(5,minmax(0,1fr));padding:26px clamp(20px,4vw,76px) 36px;border-top:1px solid #e3bb7540}
.nav a{color:#e9edf1;font-size:1rem;border-bottom:1px solid #ffffff25;padding:15px 4px;transition:color .2s,padding-left .2s}
.nav a:hover,.nav a.active{color:#f8d9a0;padding-left:10px;border-bottom-color:#e3bb75}
.hero,.hero.home{background:linear-gradient(125deg,#071a2e 0%,#0e2d4a 58%,#20465f 100%);min-height:unset;padding:clamp(62px,7vw,112px) clamp(22px,5.5vw,96px) 70px}
.hero.home{min-height:min(790px,85vh);display:flex;align-items:center}
.hero:before{top:-540px;right:-150px;width:960px;height:960px;border-color:#e3bb7540;box-shadow:0 0 0 115px #e3bb750a,0 0 0 230px #e3bb7507}
.hero:after{right:7%;bottom:-425px;width:720px;height:720px;border-color:#e3bb752d}
.hero-inner{width:100%;max-width:1500px}
.hero-top{font-size:.82rem;letter-spacing:.18em;border-color:#e3bb7580;padding-top:23px}
.hero.home h1{font-size:clamp(3.5rem,7.1vw,7.3rem);line-height:1.04;max-width:1150px;text-align:left;margin:clamp(65px,8vw,122px) 0 clamp(65px,8vw,110px);text-wrap:balance}
.hero:not(.home) h1{font-size:clamp(3.2rem,6.3vw,6.4rem);line-height:1.08;margin:80px 0 88px;text-wrap:balance}
.hero-bottom{align-items:center;gap:36px;padding-top:28px}
.hero-bottom p{font-size:clamp(1.1rem,1.65vw,1.45rem);line-height:1.55;max-width:660px}
.scroll-link{font-size:.86rem;letter-spacing:.12em;border:1px solid #e3bb758a;border-radius:50px;padding:12px 18px 12px 23px;transition:background .2s,color .2s}
.scroll-link:hover{background:#e3bb75;color:#092038}
.chapter{padding:28px clamp(22px,5.5vw,96px);font-size:.8rem;background:#e9e5da}
.photo-feature{height:clamp(390px,43vw,620px)}
.photo-feature p{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,4.8vw,5.4rem);font-weight:400;line-height:1.12}
.photo-feature div{left:clamp(22px,5.5vw,96px)}
.pathways{padding:clamp(58px,6vw,110px) clamp(22px,5.5vw,96px);background:#f1eee6}
.pathways-heading h2{font-size:clamp(2.6rem,4vw,4.7rem)}
.pathways a{gap:50px;padding-inline:28px}
.pathways a strong{font-size:clamp(1.45rem,2vw,2rem)}
.pathways a b{color:#a57738;transition:transform .2s}
.pathways a:hover b{transform:translate(5px,-5px)}
.contents{background:#eae6dc;padding-top:80px}
.contents ol{gap:0 38px}
.contents a{min-height:58px}
.content{max-width:1580px}
.story{grid-template-columns:27% minmax(0,1fr);gap:3%;padding-block:clamp(75px,7vw,118px);min-height:unset}
.story h2{font-size:clamp(2.4rem,4.2vw,4.8rem);line-height:1.1}
.story p{font-size:clamp(1.06rem,1.3vw,1.28rem);line-height:1.75;color:#40556a}
.story:nth-child(even){background:#f0eee8}
.questions{background:#0b2a44;padding-block:100px}
.site-map{background:#eeebe3}
.directory-group a{transition:color .2s,transform .2s}
.directory-group a:hover{transform:translateX(4px)}
.closing{background:#e5dfd2;padding-block:110px}
.closing h2{font-size:clamp(3rem,5.5vw,6rem)}
footer{background:#081b30}
.footer-brand{font-size:1.65rem}
.footer-mark{width:min(360px,100%)}
@media(max-width:1050px){.site-header{height:84px}.nav{top:84px;grid-template-columns:repeat(3,minmax(0,1fr))}.site-header .brand{width:270px}.story{grid-template-columns:1fr;gap:30px}}
@media(max-width:700px){.site-header{height:76px}.site-header .brand{width:min(240px,66vw)}.nav{top:76px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:calc(100dvh - 76px)}.nav a{font-size:.95rem}.hero,.hero.home{padding:68px 6% 55px;min-height:590px}.hero.home h1{font-size:clamp(3rem,10vw,4.4rem);margin:78px 0 68px}.hero:not(.home) h1{font-size:clamp(3rem,10vw,4.4rem);margin:70px 0 60px}.hero-bottom{align-items:start;flex-direction:column;gap:24px}.hero-bottom p{max-width:100%}.scroll-link{font-size:.82rem}.chapter{padding:24px 6%}.photo-feature div{left:6%;right:6%}.pathways{grid-template-columns:1fr}.pathways a{padding-inline:0;gap:18px}.story{padding-block:66px}.contents{padding:62px 6%}.questions{padding-block:76px}.closing{padding-block:75px}}
@media(max-width:440px){.site-header .brand{width:205px}.menu-toggle{font-size:.8rem;padding:8px 10px}.nav{grid-template-columns:1fr}.hero.home h1{font-size:clamp(2.65rem,11vw,3.3rem)}.hero-top{font-size:.68rem}.photo-feature p{font-size:2.45rem}}

/* Publications and section sharing */
.story>.share-bar.compact{grid-column:2;justify-self:start;margin-top:22px}
.story>.share-bar.compact .share-toggle{border-radius:30px}
.article-collection{padding:clamp(66px,7vw,115px) 5.5%;background:#f5f2e9}
.article-collection-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;border-bottom:1px solid #cfc6b6;padding-bottom:28px;margin-bottom:34px}
.article-collection-heading h2{font:400 clamp(2.6rem,4.2vw,4.8rem)/1.1 Georgia,serif;letter-spacing:-.035em;margin:15px 0 0}
.article-collection-heading>a,.article-card>a{font-weight:700;color:#1b4260;border-bottom:1px solid #b99156;padding-bottom:8px;white-space:nowrap}
.article-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.article-card{background:#fff;border:1px solid #ded6c8;padding:32px;display:flex;flex-direction:column;align-items:start;min-height:320px;box-shadow:0 12px 30px #0922390c}
.article-card h3{font:400 clamp(1.55rem,2vw,2.15rem)/1.2 Georgia,serif;margin:20px 0 10px}
.article-card p{line-height:1.65;color:#45596b}
.article-card>a{margin-top:auto}
.article-card .share-bar.compact{margin-top:20px}
.article-status{font-size:1.1rem;color:#445c70}
.article-view{max-width:990px;margin:0 auto;padding:clamp(65px,8vw,125px) 5.5%}
.article-view h1{font:400 clamp(3rem,6vw,6.5rem)/1.08 Georgia,serif;letter-spacing:-.04em;margin:30px 0}
.article-byline{font-size:.95rem;color:#65717b}
.article-summary{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.6;color:#354d61;border-block:1px solid #cfc6b6;padding:28px 0;margin:40px 0}
.article-body p{font-size:1.18rem;line-height:1.85;white-space:pre-wrap;margin:0 0 1.5em}
.article-view .share-bar.compact{margin-top:48px}
.upload-panel select{font:inherit;padding:13px;border:1px solid #bfc2c4;background:#faf9f6;min-height:48px}
.upload-panel textarea[name="body"]{line-height:1.6}
.video-manage{padding:12px 18px;border:1px solid #9a7746;background:#102542;color:#fff}
.video-manage:hover{background:#234967}
@media(max-width:900px){.article-list{grid-template-columns:repeat(2,minmax(0,1fr))}.story>.share-bar.compact{grid-column:1}}
@media(max-width:600px){.article-list{grid-template-columns:1fr}.article-collection-heading{align-items:start;flex-direction:column}.article-card{min-height:unset}.article-view{padding-inline:6%}}

/* The homepage reads as a continuous 50-page publication. */
/* Smooth document scrolling can keep chasing an old bottom while new chapters arrive. */
html:has(#continuous-pages){scroll-behavior:auto}
#continuous-status:not([hidden]){padding:24px 5.5%;background:#0a2540;color:#fff}
#continuous-status button{margin-left:10px;border:1px solid #e5bd79;background:transparent;color:#e5bd79;padding:8px 14px;font:inherit;cursor:pointer}
.scroll-page{background:var(--cream)}
.scroll-page-content{display:block}
.scroll-page .hero{min-height:540px}
.scroll-page .closing{border-top:1px solid #c9bea9}
.scroll-page .share-bar.compact{background:transparent}
#continuous-sentinel{min-height:140px;display:grid;place-items:center;padding:24px 5.5%;background:#e8e4db;color:#213950;font-weight:600;letter-spacing:.02em;border-top:1px solid #c9bea9}
#continuous-sentinel{min-height:1px;height:1px;padding:0;border:0;overflow:hidden;font-size:0;line-height:0}
body.sequence-incomplete main>.site-map,body.sequence-incomplete main>.closing,body.sequence-incomplete>footer{display:none}
@media(max-width:600px){.scroll-page .hero{min-height:500px}}

/* Sharing stays inside the page so every option remains reachable on phones. */
.share-bar{overflow:visible}
.share-inner{flex-wrap:wrap}
.share-panel,.share-bar.compact .share-panel{position:static;left:auto;right:auto;top:auto;z-index:auto;flex:0 0 100%;width:100%;max-width:680px;margin-top:12px;padding:14px;box-shadow:none;border:1px solid #c8bba7;border-radius:8px;background:#fff;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.share-panel a,.share-panel button{display:flex;align-items:center;min-height:48px;border:1px solid #e0d8cb;border-radius:5px;padding:12px 14px;font-size:1rem;line-height:1.3;overflow-wrap:anywhere}
.share-panel .native-share{grid-column:1/-1;background:#102542;color:#fff;justify-content:center;border-color:#102542}
.share-panel .native-share:hover,.share-panel .native-share:focus-visible{background:#234967;color:#fff}
.share-bar.compact{width:min(100%,680px)}
.share-bar.compact .share-inner{width:100%}
.share-feedback{padding:6px 4px}
@media(max-width:600px){.share-panel,.share-bar.compact .share-panel{max-width:100%;grid-template-columns:1fr}.share-panel a,.share-panel button{font-size:1rem}.share-caption{font-size:.83rem}}

/* Titles open their own pages or the corresponding article or video. */
.scroll-page .hero h1 a,.scroll-page .video-hero h1 a,.scroll-page .story h2 a,.article-card h3 a,.video-card-info h3 a{color:inherit;text-decoration:none}
.scroll-page .hero h1 a:hover,.scroll-page .video-hero h1 a:hover,.scroll-page .story h2 a:hover,.article-card h3 a:hover,.video-card-info h3 a:hover{text-decoration:underline;text-decoration-color:#d4a75e;text-underline-offset:.12em}
.scroll-page .hero h1 a:focus-visible,.scroll-page .video-hero h1 a:focus-visible,.scroll-page .story h2 a:focus-visible,.article-card h3 a:focus-visible,.video-card-info h3 a:focus-visible{outline:3px solid #d4a75e;outline-offset:4px}

/* Soft motion when a title opens a page or a section enters view. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:site-fade-out .16s ease-in both}
::view-transition-new(root){animation:site-fade-in .34s ease-out both}
@keyframes site-fade-out{to{opacity:.65}}
@keyframes site-fade-in{from{opacity:.25}to{opacity:1}}
@keyframes content-rise{from{opacity:.18;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.motion-enter{animation:content-rise .65s cubic-bezier(.2,.7,.2,1) both}
.scroll-page .hero h1 a,.scroll-page .video-hero h1 a,.scroll-page .story h2 a,.article-card h3 a,.video-card-info h3 a{display:inline-block;background:linear-gradient(#d4a75e,#d4a75e) left bottom / 0 2px no-repeat;transition:background-size .26s ease,transform .26s ease}
.scroll-page .hero h1 a:hover,.scroll-page .video-hero h1 a:hover,.scroll-page .story h2 a:hover,.article-card h3 a:hover,.video-card-info h3 a:hover{background-size:100% 2px;text-decoration:none;transform:translateY(-2px)}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-old(root),::view-transition-new(root),.motion-enter{animation:none!important}.scroll-page .hero h1 a,.scroll-page .video-hero h1 a,.scroll-page .story h2 a,.article-card h3 a,.video-card-info h3 a{transition:none!important}}

/* A documentary view of the UN General Assembly on the opening page. */
.home-unga {
  display: grid;
  grid-template-columns: minmax(0, 58%) minmax(0, 42%);
  max-width: 1480px;
  margin: clamp(34px, 5vw, 80px) auto;
  border: 1px solid #cda868;
  background: #193b59;
  box-shadow: 0 24px 60px rgba(10, 32, 53, .16);
}
.home-unga-photo { position: relative; min-height: 440px; margin: 0; overflow: hidden; }
.home-unga-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 43%; }
.home-unga-photo::after { content: ""; position: absolute; inset: 58% 0 0; background: linear-gradient(transparent, rgba(6, 21, 37, .88)); pointer-events: none; }
.home-unga-photo figcaption { position: absolute; z-index: 1; bottom: 20px; left: 24px; right: 24px; color: #f4f0e6; font-size: .8rem; line-height: 1.5; text-shadow: 0 1px 4px #061525; }
.home-unga-photo figcaption a { color: #ffe0a0; text-decoration: underline; text-underline-offset: 3px; }
.home-unga-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(36px, 4.7vw, 78px); border-left: 3px solid #cda868; color: #f7f4ec; }
.home-unga-copy .eyebrow { color: #e9c98d; letter-spacing: .15em; }
.home-unga-copy h2 { max-width: 17ch; margin: 20px 0 25px; color: #fff7e6; font: 400 clamp(2.4rem, 3.6vw, 4.2rem)/1.08 Georgia, serif; letter-spacing: -.035em; text-wrap: balance; }
.home-unga-copy p { max-width: 52ch; margin: 0; color: #e8edf0; font-size: clamp(1.08rem, 1.23vw, 1.25rem); line-height: 1.7; }
.home-unga-note { display: block; width: fit-content; margin-top: 35px; padding-top: 15px; border-top: 1px solid #cda868; color: #e3c48d; font-size: .85rem; letter-spacing: .05em; }
@media (max-width: 800px) {
  .home-unga { grid-template-columns: 1fr; margin: 30px 6%; }
  .home-unga-photo { min-height: 320px; }
  .home-unga-copy { border-left: 0; border-top: 3px solid #cda868; padding: 38px 7% 45px; }
  .home-unga-copy h2 { max-width: 20ch; font-size: clamp(2.2rem, 7vw, 3rem); }
}

/* Place the assembly feature directly beneath the site header. */
body.first-page-view .home-unga { margin: 18px auto 36px; }
@media (max-width: 800px) { body.first-page-view .home-unga { margin: 14px 3% 28px; } }

/* Let the opening photograph and copy use the entire desktop viewport. */
@media (min-width: 801px) {
  body.first-page-view .home-unga { width: 100%; max-width: none; margin: 18px 0 36px; border-left: 0; border-right: 0; box-shadow: none; }
  body.first-page-view .home-unga-photo { min-height: clamp(440px, 34vw, 620px); }
}
