
/* GlobalNews editorial refinement: less synthetic-gradient UI, stronger traditional publication rhythm */
:root{--ink:#172432;--muted:#667687;--line:#dce3e9;--bg:#f7f9fb;--card:#fff;--soft:#eff3f6;--shadow:0 2px 12px rgba(15,34,52,.045)}
body{letter-spacing:-.005em}
.header{border-bottom:1px solid #d5dde6;background:var(--card)}
.header-content{min-height:76px}
.logo{letter-spacing:-1.1px}
.nav a{font-size:12px;letter-spacing:.015em;text-transform:uppercase;font-weight:800}
.eyebrow{letter-spacing:1.25px;font-size:10px}
.intro h1,.section-head h2,.reader h1{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.intro h1{font-size:clamp(31px,3.6vw,48px)}
.section-head{border-bottom:1px solid var(--line);padding-bottom:13px}
.section-head h2{font-size:25px;font-weight:700}
.hero,.minihero{border-radius:7px}
.hero::before{background:linear-gradient(to top,rgba(2,14,27,.93) 0%,rgba(2,14,27,.15) 85%)}
.minihero::after{background:linear-gradient(to top,rgba(2,14,27,.9),transparent)}
.hero h2,.minihero h3{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.02em}
.hero h2{font-size:clamp(29px,2.7vw,42px);line-height:1.13}
.minihero h3{font-size:19px;line-height:1.26}
.story-card{border-radius:5px;box-shadow:none}
.story-card:hover{box-shadow:0 8px 24px rgba(20,40,60,.09);transform:translateY(-1px)}
.story-thumb{background:#1f3248}
.story-body h3{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.32;letter-spacing:-.008em}
.story-label{font-size:10px;letter-spacing:.065em}
.side-panel{border-radius:6px;box-shadow:none}
.side-panel h3{font-family:Georgia,"Times New Roman",serif;font-size:20px}
.chip{font-size:12px}
.chip.active{background:#172f4c;border-color:#172f4c}
.dark-panel{background:#102e4d}
.dark-panel::before,.page-banner::after{display:none}
.page-banner{background:#132f4e;border-radius:5px}
.page-banner h1{font-family:Georgia,"Times New Roman",serif}
.strip{background:#0d2b49;background-image:none;border-radius:6px}
.reader{border-radius:5px}
.reader h1{line-height:1.12}
.reader .summary-block{background:var(--soft);border-left:3px solid #326ab5}
.reader .summary-block h3{color:#2364a5}
.reader .note{border-top:1px solid var(--line);padding-top:13px}
.ticker{background:#143454}
.ticker-badge{background:#b62d3b}
.mobile-dock a.active{background:#eef3f8;color:#0a5ec8}
a:focus-visible,button:focus-visible{outline-offset:2px}
[data-theme="dark"]{--ink:#f0f3f6;--muted:#a9bbc8;--line:#2e4660;--card:#15293d;--soft:#19344b;--bg:#0c1b29}
[data-theme="dark"] .header{background:var(--card)}
[data-theme="dark"] .reader .summary-block{background:var(--soft)}
[data-theme="dark"] .reader .summary-block h3{color:#97bbef}
@media(min-width:1440px){.max{max-width:1400px}.grid-main{grid-template-columns:minmax(0,1fr) 310px;gap:32px}.stories-grid{gap:22px}}
@media(max-width:900px){.header-content{min-height:65px}.nav.open{background:var(--card)}}
@media(max-width:760px){
 .main-wrap{padding-top:23px}
 .intro h1{font-size:clamp(30px,7.7vw,39px);line-height:1.08}
 .section-head h2{font-size:23px}
 .hero{min-height:370px}
 .hero h2{font-size:clamp(27px,6.8vw,34px)}
 .minihero h3{font-size:14px}
 .story-card{border-radius:3px;min-height:142px;grid-template-columns:minmax(118px,38%) minmax(0,1fr)}
 .story-thumb{min-height:142px}
 .story-body h3{font-size:16px;line-height:1.27}
 .story-body{padding:12px}
 .story-meta{line-height:1.4}
 .mobile-dock{box-shadow:0 -4px 20px rgba(4,25,48,.12)}
 .mobile-dock a{min-height:56px}
 .chip{font-size:12px}
 .card-actions{margin-top:auto}
 .hero-body{padding:23px}
 .reader .summary-block{padding:18px}
}
@media(max-width:390px){.story-card{grid-template-columns:35% 65%}.story-body h3{font-size:14px}.minihero{min-height:170px}}
@media(prefers-reduced-motion:reduce){.story-card:hover{transform:none}}

/* Publication-first image handling: never fabricate news photography. */
.hero .hero-bg{background:#132e48}
.hero .hero-bg::after{display:none}
.story-thumb::before{content:"GlobalNews";font:700 12px/1 "DM Sans",sans-serif;letter-spacing:.15em;color:#dce8f3;opacity:.42}
.story-thumb img{z-index:1}
.minihero:not(:has(img)){background:#18334c}
.hero:not(:has(img)){background:#18334c}
[data-theme="dark"] .mobile-dock a.active{background:#203750;color:#b7d8ff}
@media(max-width:760px){.hero:not(:has(img)){min-height:270px}.minihero:not(:has(img)){min-height:154px}}
