/*--------------------------------------------------------------
Theme Name: SayAlwaysTruth News
Theme URI: https://www.sayalwaystruth.com
Author: AL AMIN CEO 
Author URI: https://www.sayalwaystruth.com
Description: A clean responsive news theme.
Version: 1.0
License: Private theme only for sayalwaystruth.com
License URI: 
Text Domain: sayalwaystruth
--------------------------------------------------------------*/

/* ====================================================
   SayAlwaysTruth – Complete Front Page Stylesheet
   ==================================================== */
/* ------------------------
   Base & Typography (with side margins)
   ------------------------ */
body {
    font-family: 'Tiro Bangla', serif;
}
a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}
/* ------------------------
   Container & Sections
   ------------------------ */
.sat-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 15px;
}
.sat-section {
  margin-bottom: 40px;
}
.sat-section-title {
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  color: #111;
  margin-bottom: 16px;
  padding-bottom: 4px;
  border-bottom: 3px solid #cc0000;
}

/* ------------------------
Wrapper: 3 Sections Side by Side on Desktop
------------------------ */

/* মোবাইল ও ট্যাবে সেকশনগুলো থাকবে একটির পর একটি */
.sat-three-cols {
  display: block;
  margin-top: 20px;
}

/* ডেস্কটপে তিনটি সেকশন পাশাপাশি */
@media (min-width: 1024px) {
  .sat-three-cols {
    display: flex;
    gap: 24px;
  }

  .sat-three-cols .sat-section {
    flex: 1;
    min-width: 0;
  }
}

/* ------------------------
Featured Large Post Styling
------------------------ */
.sat-featured-large {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  margin-bottom: 20px;
}
.sat-featured-large img {
  display: block;
  width: 100%;
  height: 280px;       /* সমান উচ্চতার জন্য */
  object-fit: cover;   /* ছবি ক্রপ করে ফিট করবে */
}
.sat-featured-large h3 {
  font-size: 1.25rem;
  padding: 12px;
  line-height: 1.4;
  color: #111;
}

/* ------------------------
List-Style Posts (Small Thumbnails + Titles)
------------------------ */
.sat-list-wrapper {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sat-list-wrapper li {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}
.sat-list-thumb {
  flex-shrink: 0;
  width: 60px;   /* থাম্বনেইল প্রস্থ */
  height: 60px;  /* থাম্বনেইল উচ্চতা */
  margin-right: 10px;
  overflow: hidden;
  border-radius: 4px;
}
.sat-list-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sat-list-wrapper h4 {
  font-size: 1rem;
  margin: 0;
  line-height: 1.4;
  color: #111;
}
.sat-list-wrapper a:hover h4 {
  color: #cc0000;
}

/* ------------------------
(If you use small grid cards somewhere)
------------------------ */
.sat-featured-small-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.sat-featured-small {
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08);
  transition: transform 0.2s;
}
.sat-featured-small:hover {
  transform: translateY(-2px);
}
.sat-featured-small img {
  display: block;
  width: 100%;
  height: 120px;      /* কার্ড থাম্বনেইল উচ্চতা */
  object-fit: cover;
}
.sat-featured-small h4 {
  font-size: 1rem;
  padding: 8px;
  line-height: 1.3;
  color: #111;
}





/* ---------------------------------
 SECTION WRAPPERS
----------------------------------- */
.sat-three-cols,
.sat-two-cols {
  display: block;
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .sat-three-cols,
  .sat-two-cols {
    display: flex;
    gap: 24px;
  }
  .sat-three-cols .sat-section,
  .sat-two-cols .sat-section {
    flex: 1;
    min-width: 0;
  }
}

/* ---------------------------------
 FEATURED LARGE POSTS
----------------------------------- */
.sat-featured-large {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  margin-bottom: 20px;
}
.sat-featured-large img {
  display: block;
  width: 100%;
  height: 280px;
  object-fit: cover;
}
.sat-featured-large h3 {
  font-size: 1.25rem;
  padding: 12px;
  line-height: 1.4;
  color: #111;
}

/* ---------------------------------
 LIST-STYLE POSTS (Thumbnails + Titles)
----------------------------------- */
.sat-list-wrapper {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sat-list-wrapper li {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  gap: 10px;
}
.sat-list-thumb {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
}
.sat-list-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sat-list-wrapper h4 {
  font-size: 1rem;
  margin: 0;
  line-height: 1.4;
  color: #111;
}
.sat-list-wrapper a:hover h4 {
  color: #cc0000;
}

/* ---------------------------------
 PHOTO GALLERY GRID
----------------------------------- */
.photo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  list-style: none;
  padding: 0;
  margin-top: 1.5rem;
}

.photo-grid li {
  flex: 1 1 calc(50% - 0.5rem);
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08);
  transition: transform 0.2s;
}

.photo-grid li:hover {
  transform: translateY(-2px);
}

.photo-grid li a img {
  width: 100%;
  height: 150px;
  object-fit: cover;
  display: block;
}

.photo-grid li h4 {
  font-size: 1rem;
  padding: 10px;
  margin: 0;
  line-height: 1.4;
  color: #111;
  font-weight: 500;
}

@media (max-width: 768px) {
  .photo-grid li {
    flex: 1 1 100%;
  }
}
/* ---------------------------------
 VIDEO ICON with Unicode ▶
----------------------------------- */
/* make parent a positioning context */
.videos-latest .sat-featured-large a.touch-target,
.videos-latest .sat-list-thumb.touch-target {
  position: relative;
  display: block;
}

/* base play-icon circle */
.videos-latest .video-icon {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: 50px; height: 50px;
  background: rgba(0,0,0,0.6);
  border-radius: 50%;
  box-shadow: 0 4px 12px rgba(0,0,0,0.4);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
  pointer-events: none;
  z-index: 2;
}

/* inject ▶ */
.videos-latest .video-icon::before {
  content: '▶';
  font-size: 24px;
  color: #fff;
  line-height: 1;
}

/* hover effect */
.videos-latest .video-icon:hover {
  transform: translate(-50%, -50%) scale(1.2);
  background: rgba(0,0,0,0.8);
  box-shadow: 0 6px 16px rgba(0,0,0,0.5);
}

/* smaller icon for thumbnails */
.videos-latest .video-icon.small {
  width: 36px; height: 36px;
}
.videos-latest .video-icon.small::before {
  font-size: 16px;
}


/* ====================================================
   Footer Styles – Full Width with Black Text
   ==================================================== */

/* ফুটারের নিজস্ব ব্যাকগ্রাউন্ড ইনহারিট করবে */
.site-footer {
  background: inherit;      /* থিমের ডিফল্ট ব্যাকগ্রাউন্ড */
  color: #000;              /* সব টেক্সট কালো */
  padding: 40px 0;
  font-size: 0.95rem;
  width: 100%;
  margin: 0;
}

/* ফুটারের লিংকগুলোও কালো এবং হোভারেও কালো */  
.site-footer a {
  color: #000;
  text-decoration: none;
  transition: color 0.2s;
}
.site-footer a:hover {
  color: #000;
}

/* ফুটার ইননার যেকোন Container প্যাডিং/মার্জিন রিমুভ করে ফুল প্রস্থ */
.footer-inner {
  max-width: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 30px;
  box-sizing: border-box;
}

/* নেভিগেশন, উইজেট ও সাইট ইনফো – প্রতিটা সেন্টার অ্যালাইন */
.footer-navigation,
.footer-widgets,
.site-info {
  flex: 1 1 100%;
  text-align: center;
  padding: 0 15px;   /* Optional inner padding */
}

/* ফুটার মেনু – লিঙ্ক আইটেম সেন্টারে */
#footer-menu {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
}
#footer-menu li a {
  color: #000;
  padding: 6px 10px;
}

/* উইজেট এর ব্যাকগ্রাউন্ড হালকা গ্রে */
.footer-widget {
  background: rgba(0,0,0,0.05);
  padding: 20px;
  border-radius: 6px;
  margin: 0 auto;
  max-width: 600px;
  color: #000;
}

/* মোবাইল রেসপন্সিভ */
@media (max-width: 768px) {
  .footer-inner {
    flex-direction: column;
    text-align: center;
  }
}

/* ---------------------------------
  Popular + Map: Wrapper Flex Layout
----------------------------------- */
.sat-sidebar-row {
  display: block;
  margin-top: 20px;
  gap: 24px;
}

@media (min-width: 1024px) {
  .sat-sidebar-row {
    display: flex;
  }
  .sat-sidebar-row .popular {
    flex: 2;       /* জনপ্রিয় সেকশনকে একটু বড় বরাদ্দ */
  }
  .sat-sidebar-row .map-section {
    flex: 1;       /* ম্যাপ সেকশন একটু ছোট */
  }
  .sat-sidebar-row .sat-section {
    min-width: 0;
  }
}

/* ---------------------------------
  Existing Popular List Styling
----------------------------------- */
.sat-popular-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sat-popular-list li {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  background: #fff;
  padding: 8px;
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
  transition: background 0.3s;
}
.sat-popular-list li:hover {
  background: #f2f2f2;
}
.sat-popular-list .num {
  font-weight: 700;
  margin-right: 8px;
}
.sat-popular-list .thumb {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  margin-right: 8px;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
}
.sat-popular-list .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sat-popular-list a:hover {
  color: #cc0000;
}

/* ---------------------------------
  Existing Map Section Styling
----------------------------------- */
.map-section-title {
  font-size: 22px;
  font-weight: bold;
  border-bottom: 2px solid #0073aa;
  margin-bottom: 15px;
  padding-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #000;
}
.map-section-title a {
  color: inherit;
  text-decoration: none;
  display: flex;
  align-items: center;
}
.map-section-title a:hover {
  color: #00557a;
}
.map-section-title i {
  color: #0073aa;
  font-size: 20px;
}




