/* News follows the existing FT gold-and-white visual language. */

.ft-main-nav a[aria-current=page]{color:var(--gold);text-decoration:underline;text-underline-offset:7px}
.news-main{max-width:1180px;margin:auto;padding:72px 36px 90px;min-height:60vh}
.news-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:36px;margin-bottom:30px}
.news-intro h1{font-size:clamp(46px,6vw,76px);font-style:normal;margin:12px 0 0;line-height:1.12}
.news-intro p{margin:0;color:#666a63;max-width:45ch}.news-intro .eyebrow{color:var(--gold);font-size:14px}
.news-updated{font-size:14px;color:#72766d;margin:0 0 30px}.news-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}
.news-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--line);padding:10px 22px;font-size:15px}
.news-tabs a[aria-current=page]{background:var(--gold);border-color:var(--gold);color:#fff}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.news-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:30px;border:1px solid var(--line);background:var(--white);transition:border-color .2s,box-shadow .2s}
.news-card:hover{border-color:var(--gold);box-shadow:0 5px 22px #30352f08}
.news-meta{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;font-size:14px;color:#75786e;line-height:1.5}
.news-category{color:var(--gold)}.news-card h2{font-size:clamp(28px,3vw,38px);line-height:1.18;margin:22px 0 14px;overflow-wrap:anywhere}
.news-card h2 a{display:block}.news-card>p{font-size:16px;line-height:1.8;color:#61665f;margin:0 0 24px}
.news-card .text-link{margin-top:auto;padding-top:12px}.news-effect{font-size:14px!important;color:var(--gold)!important;border-top:1px solid var(--line);padding-top:14px;align-self:stretch}
.news-article{max-width:800px;margin:0 auto}.news-back{display:inline-block;padding:10px 0;margin-bottom:28px;color:var(--gold);font-size:15px}
.news-article h1{font-style:normal;font-size:clamp(36px,5.5vw,58px);line-height:1.15;margin:24px 0;overflow-wrap:anywhere}
.news-deck{font-size:20px;line-height:1.7;margin-bottom:28px;color:#62665e}
.news-copy{font-size:17px;line-height:1.95;border-top:1px solid var(--line);padding-top:16px}.news-copy p{margin:16px 0 24px}
.news-empty{padding:36px;border:1px solid var(--line);font-size:17px}.news-article .news-effect{margin:26px 0;padding:18px;border:1px solid var(--line)}
.news-footer{padding-top:28px;margin-top:42px;border-top:1px solid var(--line);font-size:14px;color:#73766e}
@media(max-width:850px){.news-intro{gap:30px}.news-card{padding:24px}}
@media(max-width:700px){.news-main{padding:45px 22px 60px}.news-intro{grid-template-columns:1fr;gap:22px;padding-bottom:26px}.news-intro h1{font-size:52px}.news-grid{grid-template-columns:1fr;gap:18px}.news-card{padding:26px}.news-card h2{font-size:33px}.news-tabs{gap:8px}.news-tabs a{padding:10px 15px;flex:1 1 auto}.news-deck{font-size:18px}}
@media(max-width:360px){.news-main{padding-left:16px;padding-right:16px}.news-card{padding:22px}}
@media print{.news-tabs,.news-back,.ft-appearance{display:none!important}.news-card{break-inside:avoid}.news-main{padding:20px 0}}

.news-figure{position:relative;margin:0 0 24px;width:100%;overflow:hidden;background:var(--line)}
.news-figure img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;background:#fafaf7}
.news-figure figcaption{position:static;padding:8px 10px;background:#fafaf7;color:#494d43;font-size:12px;line-height:1.4}
.news-article .news-figure img{aspect-ratio:auto;max-height:1000px;object-fit:contain}
.news-card .news-figure--poster img{aspect-ratio:4/3}
.news-card .news-figure--document img{aspect-ratio:auto}
.news-card .news-figure{align-self:stretch}.news-article .news-figure{margin:32px 0}
.news-featured{font-size:12px;color:var(--gold);border:1px solid var(--line);padding:2px 8px}

/* Equal side columns keep the logo centred with either navigation layout. */
header nav.ft-main-nav{max-width:1280px;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);gap:24px;padding:0 24px}
.ft-main-nav .brand{grid-column:2;grid-row:1;justify-self:center;align-self:center;width:120px}
.ft-nav-side{display:flex;align-items:center;justify-content:space-evenly;gap:16px;min-width:0;grid-row:1}
.ft-nav-left{grid-column:1}.ft-nav-right{grid-column:3}
.ft-main-nav .ft-nav-side a{font-size:14px;letter-spacing:.035em;line-height:1.5;min-height:44px;display:flex;align-items:center;justify-content:center;white-space:normal}
.ft-main-nav .ft-nav-side a:hover{color:var(--gold)}
@media(max-width:1000px){
 header:has(.ft-main-nav){height:auto!important;min-height:0}
 header nav.ft-main-nav{height:auto;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px 12px;padding:8px 18px 12px}
 .ft-main-nav .brand{grid-column:1/-1;grid-row:1;justify-self:center;width:88px}
 .ft-main-nav .nav-logo{height:72px}
 .ft-nav-side{display:contents}
 .ft-main-nav .ft-nav-side a{justify-content:center;min-height:44px;padding:6px 4px;font-size:14px;letter-spacing:0;overflow-wrap:normal;word-break:normal}
 .hero{min-height:clamp(400px,62svh,540px);height:auto;max-height:none;padding:28px 20px 64px}
 .hero-content{padding:0;min-width:0}
 .hero-logo{width:clamp(140px,23vw,195px);max-width:50%;margin:12px auto 20px}
 .hero-content>.eyebrow{font-size:12px;margin:0 0 12px}
 .hero h1{font-size:clamp(30px,5vw,42px);line-height:1.18;margin:20px auto 24px;max-width:24ch;overflow-wrap:break-word}
 .hero .outline-button{min-height:44px;padding:9px 18px;gap:22px;font-size:14px;max-width:100%;align-items:center;justify-content:center}
 .hero-caption{bottom:16px;padding:0 14px;max-width:100%;font-size:12px;line-height:1.5}
 .hero:has(.hero-video){padding-bottom:110px}
}
@media(max-width:600px){
 header nav.ft-main-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:0 8px;padding:8px 10px 12px}
 .ft-main-nav .brand{flex:0 0 100%;width:auto;margin-bottom:4px}.ft-main-nav .nav-logo{height:64px}
 .ft-main-nav .ft-nav-side a{flex:0 1 auto;padding:6px 8px;max-width:100%}
 .hero{margin:0 10px;min-height:clamp(370px,62svh,480px);padding:24px 16px 52px}
 .hero-logo{width:clamp(132px,38vw,168px);max-width:56%;margin:12px auto 18px}
 .hero h1{font-size:clamp(30px,7.5vw,36px);margin:18px auto 22px;max-width:20ch}
 .section{padding-left:22px;padding-right:22px;padding-top:48px;padding-bottom:48px}
 .intro{padding-top:54px}.service-grid{margin-top:24px}
 .news-main{padding-top:32px}
}
