/* Komani Newsroom 8: user-supplied masthead artwork and CNN-proportioned dark footer. */
/* Header: preserve the 181:23 wide original logo's aspect ratio; no stretching or crop. */
.header-logo {flex:0 0 auto;max-width:none!important;min-width:0;display:flex;align-items:center;}
.header-logo .kn-header-brand {display:inline-flex;align-items:center;justify-content:flex-start;line-height:0;flex-shrink:0;}
.header-logo .kn-brand-image {display:block!important;width:auto!important;max-width:170px!important;max-height:27px!important;height:auto!important;object-fit:contain!important;border:0;}
.header-inner {column-gap:clamp(17px,1.45vw,26px);}
.main-menu {column-gap:clamp(24px,1.72vw,33px);}
.header-tools{margin-left:auto;flex-shrink:0}
/* Desktop header must keep the logo and categories in a single uninterrupted row. */
@media (min-width:1511px){.main-menu a{font-size:clamp(14px,.97vw,17px)}}
@media (min-width:1191px) and (max-width:1510px){.main-menu{column-gap:clamp(15px,1.4vw,23px)}}
/* Article page: generous editorial spacing, not oversized ultra-black lettering. */
.kn-single-post .article-title,.kn-stream-item .article-title{font-weight:700;letter-spacing:-.026em;line-height:1.12;}
.kn-single-post .article-title::before,.kn-stream-item .article-title::before{width:6px!important;}
.kn-single-post .article-media-row,.kn-stream-item .article-media-row{max-width:1244px;}
.article-media-share svg{width:20px;height:20px}
/* Full-width deep black footer with upper + lower zones directly mirroring supplied reference proportions. */
.site-footer.kn-cnn-footer{--kn-footer-line:#373737;margin-top:65px;padding:37px 0 25px;background:#0b0b0b;color:#fff;font-family:Arial,Helvetica,sans-serif;}
.kn-cnn-footer *{box-sizing:border-box}
.kn-cnn-footer a{color:#f8f8f8;text-decoration:none}
.kn-cnn-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.kn-footer-upper{border-top:1px solid var(--kn-footer-line);border-bottom:1px solid var(--kn-footer-line);padding:40px 0 34px;}
.kn-footer-primary-row{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:43px}
.kn-footer-brand{display:inline-flex;align-items:center;max-width:270px;line-height:1;flex:0 1 auto;}
.kn-footer-brand .kn-footer-image{display:block;width:auto;max-width:235px;height:auto;max-height:50px;object-fit:contain;}
.kn-footer-wordmark{display:flex;align-items:center;gap:4px;color:#fff;font-weight:800;font-size:22px;letter-spacing:-.065em;line-height:1}
.kn-footer-wordmark>span{color:#fff}
.kn-footer-wordmark>b{padding:3px 5px 4px;letter-spacing:-.045em;font-size:18px;background:#ca0015;color:#fff;}
.kn-footer-top-links{display:flex;align-items:center;justify-content:flex-end;gap:32px;font-weight:600;font-size:16px;white-space:nowrap;}
.kn-footer-top-links>a:last-child{border-left:1px solid #b6b6b6;padding-left:36px;}
.kn-footer-social-row{display:flex;justify-content:flex-end;align-items:center;padding-top:27px;min-height:69px;}
.kn-footer-follow{display:flex;align-items:center;justify-content:flex-end;gap:23px;min-height:32px;white-space:nowrap}
.kn-footer-follow strong{font-size:16px;letter-spacing:.005em;font-weight:700;margin-right:0}
.kn-footer-social-icon{width:25px;height:27px;display:inline-flex;align-items:center;justify-content:center;}
.kn-footer-social-icon svg{width:25px;height:25px;display:block}
.kn-footer-social-icon.kn-icon-youtube svg{width:28px;height:28px}
.kn-footer-follow-separator{align-self:stretch;width:1px;background:#3e3e3e;margin:0 2px 0 4px;}
.kn-footer-rss{display:inline-flex;gap:10px;align-items:center;font-size:15px;font-weight:700;letter-spacing:.01em;}
.kn-footer-rss svg{width:23px;height:23px;}
.kn-footer-lower{padding-top:30px}
.kn-footer-legal-nav .legal-menu{display:flex!important;flex-wrap:wrap;align-items:center;column-gap:24px;row-gap:16px;margin:0!important;padding:0!important;list-style:none}
.kn-footer-legal-nav .legal-menu li{list-style:none;padding:0;margin:0}
.kn-footer-legal-nav .legal-menu a{font-size:14px;font-weight:400;line-height:1.35;color:#f5f5f5;white-space:nowrap;}
.kn-footer-copyright{margin-top:36px;color:#e1e1e1;font-size:13px;line-height:1.25;}
.kn-footer-copyright p{font-size:13px;line-height:1.35;margin:0 0 4px;color:#e1e1e1}
/* Keep footer compact and generous, without introducing a scrollable horizontal line. */
@media(max-width:1190px){
  .kn-footer-upper{padding-top:31px;padding-bottom:30px;}
  .kn-footer-top-links{gap:20px;font-size:14px}
  .kn-footer-top-links>a:last-child{padding-left:22px}
  .kn-footer-follow{gap:17px}
  .kn-footer-follow strong{font-size:14px}
  .header-logo .kn-brand-image{max-width:165px!important}
}
@media(max-width:700px){
  .header-logo .kn-brand-image{max-width:142px!important;max-height:23px!important}
  .site-footer.kn-cnn-footer{margin-top:48px;padding:24px 0 25px}
  .kn-footer-upper{padding:27px 0 24px}
  .kn-footer-primary-row{align-items:flex-start;flex-wrap:wrap;gap:22px}
  .kn-footer-brand .kn-footer-image{max-width:180px;max-height:45px}
  .kn-footer-wordmark{font-size:20px}
  .kn-footer-top-links{gap:14px;justify-content:flex-start;flex-wrap:wrap;font-size:13px;width:100%}
  .kn-footer-top-links>a:last-child{padding-left:15px}
  .kn-footer-social-row{padding-top:22px;justify-content:flex-start;min-height:0}
  .kn-footer-follow{gap:13px;flex-wrap:wrap;justify-content:flex-start;white-space:normal}
  .kn-footer-follow strong{width:100%;font-size:13px}
  .kn-footer-social-icon{width:25px}
  .kn-footer-follow-separator{height:26px;align-self:auto}
  .kn-footer-rss{font-size:12px}
  .kn-footer-lower{padding-top:25px}
  .kn-footer-legal-nav .legal-menu{column-gap:16px;row-gap:13px}
  .kn-footer-legal-nav .legal-menu a{font-size:12px}
  .kn-footer-copyright{margin-top:28px}
  .kn-footer-copyright p{font-size:12px}
  .kn-single-post .article-title::before,.kn-stream-item .article-title::before{width:4px!important;}
}
