/* UKPulse Header CSS — extracted from index.html etalon */
.utility-bar{background:#1a2b3c;height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:12px;color:rgba(255,255,255,0.5);}
.utility-bar a{color:rgba(255,255,255,0.6);margin-left:14px;transition:color 0.15s;}
.utility-bar a:hover{color:#fff;}
@media(max-width:600px){.utility-social{display:none;}.utility-bar{padding:0 14px;}}
.masthead{border-bottom:4px solid var(--red);padding:12px 20px;display:flex;align-items:center;gap:16px;background:var(--white);}
.masthead-logo{font-family:'Playfair Display',Georgia,serif;font-size:34px;font-weight:900;color:var(--black);letter-spacing:-1px;flex-shrink:0;}
.masthead-logo span{color:var(--red);}
.masthead-tagline{font-size:12px;color:var(--muted);font-style:italic;border-left:1px solid var(--border);padding-left:14px;line-height:1.4;}
.masthead-right{margin-left:auto;display:flex;align-items:center;gap:10px;}
.live-badge{background:var(--red);color:#fff;font-size:11px;font-weight:700;letter-spacing:0.1em;padding:4px 10px;display:flex;align-items:center;gap:6px;white-space:nowrap;}
.live-dot{width:6px;height:6px;background:#fff;border-radius:50%;animation:blink 1.2s ease infinite;flex-shrink:0;}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0.2}}
@media(max-width:600px){.masthead{padding:10px 14px;}.masthead-logo{font-size:26px;}.masthead-tagline{display:none;}}
.ticker-bar{background:var(--offwhite);border-bottom:1px solid var(--border);height:36px;display:flex;align-items:stretch;overflow:hidden;}
.ticker-label{background:var(--red);color:#fff;font-size:11px;font-weight:700;letter-spacing:0.1em;padding:0 14px;display:flex;align-items:center;white-space:nowrap;flex-shrink:0;}
.ticker-scroll{flex:1;overflow:hidden;display:flex;align-items:center;}
.ticker-inner{display:flex;gap:48px;animation:ticker 50s linear infinite;white-space:nowrap;}
.ticker-item{font-size:13px;color:var(--mid);display:flex;align-items:center;gap:8px;}
.ticker-sep{color:var(--red);}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.main-nav{border-bottom:1px solid var(--border);background:var(--white);position:sticky;top:0;z-index:100;box-shadow:0 1px 4px rgba(0,0,0,0.06);}
.nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:stretch;padding:0 20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:center;overflow:visible;}
.nav-inner::-webkit-scrollbar{display:none;}
.nav-group{position:relative;display:inline-flex;align-items:stretch;flex-shrink:0;}
.has-drop{cursor:pointer;}
.nav-drop{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid #e0e0e0;border-top:3px solid #BB1919;box-shadow:0 4px 20px rgba(0,0,0,0.15);z-index:9999;min-width:200px;padding:6px 0;}
.nav-drop.open{display:block!important;}
.nav-drop a{display:block;padding:10px 16px;font-size:13px;color:#222;text-decoration:none;font-weight:500;white-space:nowrap;}
.nav-drop a:hover{background:#f5f5f5;color:#BB1919;}
.nav-drop{max-width:calc(100vw - 20px);}
.nav-item{font-size:12px;font-weight:600;color:var(--mid);padding:12px 8px;border-bottom:3px solid transparent;transition:all 0.15s;white-space:nowrap;cursor:pointer;background:none;border-top:none;border-left:none;border-right:none;font-family:inherit;}
.nav-item:hover,.nav-item.active{color:var(--black);border-bottom-color:var(--red);}
@media(max-width:600px){.nav-inner{padding:0 6px;}.nav-item{padding:11px 6px;font-size:11px;}}
@media(max-width:768px){.nav-inner{justify-content:flex-start!important;overflow-x:auto;}}
.search-box{display:flex;align-items:center;border:1.5px solid var(--border);background:var(--white);overflow:hidden;transition:border-color .2s;margin-left:auto;}
.search-box:focus-within{border-color:var(--red);}
.search-box input{border:none;outline:none;padding:7px 12px;font-size:13px;font-family:inherit;width:180px;background:transparent;}
.search-box button{background:var(--red);border:none;color:#fff;padding:7px 12px;cursor:pointer;font-size:14px;line-height:1;}
.search-box button:hover{background:#a01515;}
@media(max-width:768px){.search-box input{width:120px;}.masthead-tagline{display:none;}}
@media(max-width:480px){.search-box input{width:90px;font-size:12px;}}
.back-top{position:fixed;bottom:20px;right:20px;background:var(--red);color:#fff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;opacity:0;transition:opacity 0.2s;z-index:200;border:none;border-radius:2px;}
.back-top.visible{opacity:1;}
/* Mobile dropdown */
@media(max-width:768px){
  .nav-drop.ukp-mobile-open{display:block!important;position:fixed!important;z-index:999999!important;max-width:calc(100vw - 20px)!important;max-height:70vh!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;}
}
/* Footer */
footer{background:#1a2b3c;padding:48px 20px 0;}
.footer-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.08);}
.footer-brand-logo{font-family:'Playfair Display',serif;font-size:26px;font-weight:900;color:#fff;margin-bottom:12px;}
.footer-brand-logo span{color:var(--red);}
.footer-brand-desc{font-size:13px;color:rgba(255,255,255,0.4);line-height:1.6;}
.footer-col h4{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:14px;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
.footer-col ul a{font-size:13px;color:rgba(255,255,255,0.5);transition:color 0.15s;}
.footer-col ul a:hover{color:#fff;}
.footer-bottom{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 0;font-size:12px;color:rgba(255,255,255,0.25);flex-wrap:wrap;gap:8px;}
.footer-links{display:flex;gap:16px;}
.footer-links a{color:rgba(255,255,255,0.25);transition:color 0.15s;}
.footer-links a:hover{color:rgba(255,255,255,0.6);}
@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr;gap:28px;}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr;}}
