
*{margin:0;padding:0;box-sizing:border-box}
body{
font-family:Arial,sans-serif;
background:#07111f;
color:white;
line-height:1.6;
}
.container{width:90%;max-width:1280px;margin:auto}
.header{
position:sticky;top:0;z-index:1000;
background:rgba(5,10,20,.92);
backdrop-filter:blur(10px);
border-bottom:1px solid rgba(255,255,255,.08)
}
.nav{
display:flex;justify-content:space-between;align-items:center;
padding:20px 0
}
.logo{display:flex;align-items:center;gap:12px;font-weight:bold}
.logo img{width:75px;height:110px;border-radius:12px}
nav{display:flex;gap:24px;flex-wrap:wrap}
nav a{
color:white;text-decoration:none;transition:.3s
}
nav a:hover{color:#60a5fa}
.hero{
min-height:88vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/hero.jpg') center/cover;
}
.hero-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.hero h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.hero p{color:#d1d5db;font-size:1.1rem}
.badge{
display:inline-block;
padding:10px 16px;
border-radius:999px;
background:rgba(37,99,235,.18);
border:1px solid rgba(37,99,235,.4);
color:#93c5fd
}
.about{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/aboutus.jpg') center/cover;
}
.about-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.about h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.about p{color:#d1d5db;font-size:1.1rem}
.rules{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/rules.jpg') center/cover;
}
.rules-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.rules h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.rules p{color:#d1d5db;font-size:1.1rem}
.nh{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/nationalhighways/highwaysbanner.jpg') center/cover;
}
.nh-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.nh h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.nh p{color:#d1d5db;font-size:1.1rem}
.hsfrs{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/hsfrs/firebanner.jpg') center/cover;
}
.hsfrs-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.hsfrs h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.hsfrs p{color:#d1d5db;font-size:1.1rem}
.humberside{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/humbersidepolice/hpbanner.png') center/cover;
}
.humberside-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.humberside h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.humberside p{color:#d1d5db;font-size:1.1rem}
.yas{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/yas/yasbanner.jpg') center/cover;
}
.yas-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.yas h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.yas p{color:#d1d5db;font-size:1.1rem}

.service{
min-height:25vh;
display:flex;align-items:center;
background:
linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.75)),
url('../images/services.jpg') center/cover;
}
.service-content{
display:grid;
grid-template-columns:1.7fr .9fr;
gap:50px;
align-items:center
}
.service h1{
font-size:4.5rem;
line-height:1.1;
margin:20px 0
}
.service p{color:#d1d5db;font-size:1.1rem}
.badge{
display:inline-block;
padding:10px 16px;
border-radius:999px;
background:rgba(37,99,235,.18);
border:1px solid rgba(37,99,235,.4);
color:#93c5fd
}
.btn{
display:inline-block;
padding:15px 24px;
border-radius:14px;
text-decoration:none;
font-weight:bold;
margin-top:25px
}
.primary{
background:linear-gradient(135deg,#2563eb,#1d4ed8);
color:white
}
.panel,.card{
background:rgba(255,255,255,.05);
backdrop-filter:blur(12px);
border:1px solid rgba(255,255,255,.08);
border-radius:24px
}
.panel{padding:40px}
.big{font-size:4rem;font-weight:bold;color:#60a5fa}
.section{padding:90px 0}
.grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px
}
.card{
overflow:hidden;
text-decoration:none;
color:white;
transition:.3s
}
.card:hover{
transform:translateY(-5px);
background:rgba(255,255,255,.08)
}
.card img{
width:100%;
height:220px;
object-fit:cover
}
.card-content{padding:25px}
.banner{
padding:110px 0;
text-align:center;
background:linear-gradient(135deg,#0f172a,#1e3a8a)
}
.banner h1{font-size:3.5rem}
.footer{
background:#020617;
padding:45px 0;
text-align:center;
margin-top:50px
}
.list li{margin-bottom:12px}
@media(max-width:900px){
.hero-content,.grid{grid-template-columns:1fr}
.hero h1{font-size:2.7rem}
.about-content,.grid{grid-template-columns:1fr}
.about h1{font-size:2.7rem}
.nav{flex-direction:column;gap:20px}
}

/* Dropdown Navigation */
.dropdown{
position:relative;
display:inline-block;
}

.dropdown-toggle{
display:flex;
align-items:center;
gap:6px;
}

.dropdown-menu{
position:absolute;
top:100%;
padding-top:16px;
left:0;
min-width:260px;
background:rgba(10,15,25,.98);
border:1px solid rgba(255,255,255,.08);
border-radius:16px;
padding:14px 0;
display:none;
flex-direction:column;
backdrop-filter:blur(14px);
box-shadow:0 15px 35px rgba(0,0,0,.45);
z-index:1000;
}

.dropdown:hover .dropdown-menu{
display:flex;
}

.dropdown-menu a{
padding:12px 18px;
transition:.25s;
}

.dropdown-menu a:hover{
background:rgba(255,255,255,.06);
color:#60a5fa;
}

.dropdown-arrow{
position:absolute;
top:-10px;
left:28px;
width:20px;
height:20px;
background:rgba(10,15,25,.98);
border-left:1px solid rgba(255,255,255,.08);
border-top:1px solid rgba(255,255,255,.08);
transform:rotate(45deg);
}


/* Services dropdown hover fix */
.nav-item-dropdown,
.dropdown,
.has-dropdown,
.services-dropdown {
    position: relative;
}

.nav-item-dropdown .submenu,
.dropdown-menu,
.submenu,
.dropdown-content {
    margin-top: 14px !important;
    padding-top: 10px !important;
}

.nav-item-dropdown .submenu::before,
.dropdown-menu::before,
.submenu::before,
.dropdown-content::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 30px;
    width: 18px;
    height: 18px;
    background: inherit;
    transform: rotate(45deg);
    z-index: -1;
}

.nav-item-dropdown:hover .submenu,
.nav-item-dropdown .submenu:hover,
.dropdown:hover .dropdown-menu,
.dropdown-menu:hover,
.has-dropdown:hover .submenu,
.has-dropdown .submenu:hover {
    display: flex !important;
    flex-direction: column;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* Invisible hover bridge */
.nav-item-dropdown::after,
.dropdown::after,
.has-dropdown::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 20px;
    bottom: -20px;
}



/* Home hero layout: intro above, status/events panels side by side below */
.hero-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: start;
}

.home-side-panels {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    align-items: stretch;
    width: 100%;
    clear: both;
}

.home-side-panel {
    min-width: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
}

.home-side-panel .card1 {
    width: 100% !important;
    max-width: none;
}

.home-side-panel .community-events-card.card1 {
    margin-top: 0;
}



/* Public home page Command Portal events widget */
.home-side-panel .card1 {
    width: 100%;
}

.home-panel-spacer {
    height: 26px;
}

.community-events-card {
    width: 100%;
    background: #2b2d31;
    border-left: 4px solid #198754;
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.4);
}

.community-events-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 12px;
}

.community-events-empty {
    color: #d1d5db;
    font-size: 14px;
    margin: 0;
}

.community-events-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.community-event-item {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    align-items: start;
    border-top: 1px solid #3a3c42;
    padding-top: 12px;
}

.community-event-item:first-child {
    border-top: 0;
    padding-top: 0;
}

.community-event-main strong {
    display: block;
    color: #fff;
    line-height: 1.25;
}

.community-event-main span,
.community-event-main small {
    display: block;
    color: #b5bac1;
    font-size: 13px;
    margin-top: 2px;
}

.community-event-main p {
    color: #dcddde;
    font-size: 13px;
    margin-top: 8px;
    line-height: 1.35;
}

.community-event-countdown {
    background: #198754;
    color: #fff;
    border-radius: 10px;
    padding: 8px 10px;
    min-width: 115px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0,0,0,.12);
}

.community-event-countdown span {
    display: block;
    font-size: 12px;
    line-height: 1.1;
    opacity: .95;
    margin-bottom: 3px;
}

.community-event-countdown b {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
}

@media(max-width:900px){
    .community-event-item {
        grid-template-columns: 1fr;
    }
    .community-event-countdown {
        width: 100%;
    }
}

/* Events widget: separate card matching the server status styling */
.home-side-panel .community-events-card.card1 {
    width: 100%;
    margin-top: 0;
    background: #2b2d31;
    border-left: 4px solid #0b772b;
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.4);
}

.community-events-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

.community-events-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.community-events-title-row .dot1 {
    flex: 0 0 auto;
}

.community-event-meta strong,
.community-event-details strong {
    color: #dcddde;
}

.community-events-empty {
    color: #b5bac1;
}

.community-events-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.community-event-item {
    background: rgba(255,255,255,.04);
    border: 1px solid #3a3c42;
    border-left: 4px solid #3ba55d;
    border-radius: 8px;
    padding: 12px;
}

.community-event-row-main {
    margin-bottom: 6px;
}

.community-event-heading {
    font-weight: bold;
    color: #dcddde;
}

.community-event-meta,
.community-event-details {
    margin-top: 5px;
    color: #b5bac1;
}

.community-event-details {
    border-top: 1px solid #3a3c42;
    padding-top: 8px;
    color: #dcddde;
}

.community-event-countdown {
    margin-top: 10px;
    background: #198754;
    color: #fff;
    border-radius: 8px;
    padding: 8px 10px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0,0,0,.12);
}

.community-event-countdown span {
    display: block;
    font-size: 12px;
    line-height: 1.1;
    opacity: .95;
    margin-bottom: 3px;
}

.community-event-countdown b {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
}
