/* styles.css - Responsive, professional look */
:root{
  --accent:#00bfa5;
  --bg:#0f1720;
  --muted:#9aa4ad;
  --card:#0b1220;
  --gap:14px;
  --transition:0.25s;
  --title-font: 'Poppins', sans-serif;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:var(--title-font);
  background:linear-gradient(180deg,#f7f9fb 0%, #eef2f6 100%);
  color:#122;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Top bar */
.topbar{
 width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 20px;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  box-shadow: 0 3px 8px rgba(0,0,0,0.25);
  
}


/* First Top Bar (blue theme) */
.topbar.primary {
  background: linear-gradient(90deg, #0044cc, #0077ff);
}


/* Second Top Bar (orange theme) */
.topbar.secondary {
  background: linear-gradient(90deg, #ff6600, #ff3300);
}

.topbar .top-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center; /* center both title and rotator */
  gap:20px;
  padding:6px 12px;
}
.topbar .tb-title{
  font-weight: 700;
  margin-right: 15px;
  font-size: 1.05rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #ffcc00;
  font-family: var(--title-font);
  font-weight: 700;
  font-size: 1.3rem;
}
.topbar .tb-rotator{
    flex: 1;
  text-align: left;
  font-style: italic;
  font-size: 1rem;
  white-space: nowrap;
  overflow: hidden;
  border-right: 2px solid #fff;
  animation: blinkCursor 0.8s infinite;
}

.topbar .tb-rotator a:hover{
  color: #ffcc00;
}

.topbar .tb-rotator a{
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.topbar-1{ background: linear-gradient(90deg,#0f5b9d,#00a8ff); }
.topbar-2{ background: linear-gradient(90deg,#7b2ff7,#ff7ab6); }



/* Responsive Adjustments */
@media (max-width: 600px) {
  .topbar {
    flex-direction: column;
    text-align: center;
    padding: 10px;
  }
  .topbar .title {
    margin: 0 0 5px 0;
  }
  .tb-rotator {
    text-align: center;
    font-size: 0.95rem;
  }
}

/* Blinking cursor effect */
@keyframes blinkCursor {
  0% { border-color: transparent; }
  50% { border-color: #fff; }
  100% { border-color: transparent; }
}


/* 3-col ad area */
.three-col{
  width: 100%;
  margin:18px auto;
  display:grid;
  grid-template-columns:125px 1fr 125px;
  gap:20px;
  align-items:center;
  padding:0 12px;
}
.ad-125 img{ width:125px; height:125px; object-fit:cover; border-radius:6px; }

/* banner */
.banner-rotator img{ max-width:100%; height:auto; display:block; border-radius:6px; box-shadow:0 2px 8px rgba(0,0,0,0.08) }

/* 728 banner container */
.banner-728{ max-width:1200px; margin:18px auto; padding:0 12px; text-align:center; }

/* section titles */
.section-title{
  width: 100%;
  background: linear-gradient(90deg, #0077ff, #00ccff);
  color: #fff;
  text-align: center;
  padding: 14px 20px;
  font-weight: 700;
  font-size: 1.3rem;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  position: relative;
  overflow: hidden;
  border-left: 6px solid #ffcc00;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.4);
}

.section-title::after{
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #ffcc00;
  margin: 6px auto 0;
  border-radius: 2px;
}

/* Smaller devices adjustments */

@media (max-width: 600px) {
  .section-title {
    font-size: 1.1rem;
    padding: 12px;
    border-left: 4px solid #ffcc00;
  }
  .section-title::after {
    width: 60px;
  }
}


/* Grid styles common */
.grid{
    width: 100%;
  margin:0 auto;
  padding:12px;
  background:linear-gradient(180deg,#ffffff, #f3f7fa);
  border-radius:8px;
  box-shadow:0 4px 18px rgba(6,12,17,0.06);
}
.grid-5x5{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  padding:18px;
}
.link-box{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  min-height:56px;
  text-decoration:none;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border-radius:6px;
  border:1px solid rgba(10,20,30,0.04);
  box-shadow:0 6px 18px rgba(10,20,30,0.04);
  transition: transform var(--transition), background var(--transition), box-shadow var(--transition);
  color:#0a2a3a;
  font-weight:600;
}
.link-box:hover{
  transform:translateY(-6px) scale(1.03);
  background:linear-gradient(180deg,var(--accent), #00ffd1);
  color:#032;
  box-shadow:0 10px 30px rgba(0,0,0,0.12);
}

/* mixed grid layout: left ad + right 4x4 grid */
.mixed-grid{
  margin:12px auto;
  display:grid;
  grid-template-columns:300px 1fr;
  gap:12px;
  align-items:start;
  padding:12px;
  background:transparent;
  width: 100%;

}
.right-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  padding:12px;
  border-radius:8px;
}

/* left 4x4 + right ad */
.left-grid-right-ad{
  width: 100%;
  margin:12px auto;
  display:grid;
  grid-template-columns:1fr 300px;
  gap:12px;
  align-items:start;
  padding:12px;

}
.left-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  padding:12px;
  border-radius:8px;

}

/* Mobile view */
@media (max-width: 768px) {
  .left-grid {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .left-grid .ad {
    order: -1; /* show ad first */
    width: 100%;
  }

  .left-grid > div {
    width: 100%;
	grid-column: span 4; /* Ad takes full row */
	grid-template-columns: 1fr;
	
  }
  
}


/* Mobile view */
@media (max-width: 768px) {
  .left-grid-right-ad {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .left-grid-right-ad .ad {
    order: -1; /* show ad first */
    width: 100%;
  }

  .left-grid-right-ad > div {
    width: 100%;
	grid-column: span 4; /* Ad takes full row */
	grid-template-columns: 1fr;
	
  }
  
}





/* Mobile view */
@media (max-width: 768px) {
  .mixed-grid {
    display: flex;
    flex-direction: column;
    gap: 15px;
	
	
  }

  .mixed-grid .ad {
    order: -1; /* Show ad first */
    width: 100%;
  }

  .mixed-grid > div {
    width: 100%;
	grid-column: span 4; /* Ad takes full row */
	grid-template-columns: 1fr;


  }
  
  
}




/* three column section with mini 2x2 grids */
.three-col-2{
    width: 100%;
  margin:12px auto;
  display:grid;
  grid-template-columns:1fr 300px 1fr;
  gap:12px;
  padding:12px;
  
}

/* Ad styling */
.three-col-2 .ad {
  background: #ccc;
  text-align: center;
  padding: 20px;
  border-radius: 12px;
  min-width: 300px;
}

/* Mobile view */
@media (max-width: 768px) {
  .three-col-2 {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .three-col-2 .ad {
    order: -1; /* always show ad first */
    width: 100%;
  }

  .three-col-2 .mini-grid,
  .three-col-2 .mini-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
	
  }


  .three-col-2 .mini-grid  {
    width: 100%;
	grid-column: span 4; /* Ad takes full row */
	grid-template-columns: 1fr;
  }
}


/* Mobile view */
@media (max-width: 768px) {
  .site-footer {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .site-footer .ad {
    order: -1; /* always show ad first */
    width: 100%;
  }

  .site-footer .footer-left,
  .site-footer .footer-right {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
	align-items:center;
    justify-content:center;
	
  }


  .site-footer .footer-left .footer-right  {
    width: 100%;
	grid-column: span 4; /* Ad takes full row */
	grid-template-columns: 1fr;
	
  }
}






.mini-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  padding:12px;
  border-radius:8px;
}

/* Footer */
.site-footer{

  margin:0 auto;
  justify-content:space-between;
  align-items:center;
  padding:12px;
  background:#0b1b2a;
  color:#fff;
  border-radius:6px;
  width: 100%;
  color: #fff;
  display: flex;
  font-size: 14px;
}

.site-footer a{
	color: #fff;
	text-decoration:none;
}


.site-footer .footer-right{ opacity:0.9 }

/* Responsive Design */
@media (max-width: 1024px) {
  .grid-5x5 { grid-template-columns: repeat(3, 1fr); }
  .grid-4x4 { grid-template-columns: repeat(2, 1fr); }
  .ads-section { grid-template-columns: 1fr; }
  .mixed-300-left, .mixed-300-right, .mixed-3col {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .grid-5x5, .grid-4x4, .grid-2x2 {
    grid-template-columns: 1fr;
  }
  .top-bar {
    flex-direction: column;
    text-align: center;
  }
  .rotating-message {
    text-align: center;
    margin-top: 5px;
  }
  .footer {
    flex-direction: column;
    text-align: center;
    gap: 5px;
  }
}
