/* ============================================
   UMIHUE STUDIO - STYLE.CSS
   ============================================ */
:root {
  --primary: #184f35;
  --primary-hover: #236e4b;
  --primary-light: #e1ebe4;
  --accent: #8bb39a;
  --text-dark: #222;
  --text-gray: #666;
  --divider: #c89595;
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Segoe UI', Tahoma, sans-serif; color:var(--text-dark); line-height:1.6; background:white; }
a { text-decoration:none; color:inherit; }
img { max-width:100%; display:block; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }

/* ========== HEADER ========== */
.custom-header { background:#184f35; padding:15px 0 0; position:relative; z-index:100; color:white; margin-bottom: 0; }
.main-nav-container { 
  display:flex; 
  justify-content:space-between; 
  align-items:center; 
  position:relative; 
  padding-bottom:15px;
  max-width:1200px;
  margin:0 auto;
}
.nav-links { display:flex; list-style:none; gap:25px; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; flex:1; }
.nav-left { justify-content: flex-end; padding-right:100px; }
.nav-right { justify-content: flex-start; padding-left:100px; }
.nav-links li a { color:white; padding:5px 0; transition:0.2s; display:flex; align-items:center; gap:6px; }
.nav-links li a:hover { opacity:0.8; }

.logo-wrapper { 
  position:absolute; 
  left:50%; 
  top:-15px;
  transform: translateX(-50%); 
  z-index:110; 
}
.logo-circle-dip { 
  width:120px; 
  height:120px; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  border-radius:50%; 
  background:#184f35; 
  overflow:hidden; 
  box-shadow:0 8px 20px rgba(0,0,0,0.2);
  padding:0;
  position: relative;
  z-index: 120;
}
.logo-circle-dip img { width:100%; height:100%; object-fit:cover; }

.mobile-menu-btn { display:none; background:none; border:none; color:white; font-size:24px; cursor:pointer; }

/* ========== SLIDER ========== */
.slider-container { padding:0; background: #000; }
.hero-slider-wrapper { position:relative; width:100%; height:650px; overflow:hidden; background: #000; }
.slide { position:absolute; inset:0; opacity:0; transition:opacity 1s; display: flex; align-items: center; justify-content: center; }
.slide.active { opacity:1; }
.slide img { width:100%; height:100%; object-fit:contain; }
.slider-nav-btn { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; border:none; background:rgba(255,255,255,0.2); color:white; font-size:20px; cursor:pointer; transition:0.2s; z-index: 10; }
.slider-nav-btn:hover { background:var(--primary); }
.slider-prev { left:20px; }
.slider-next { right:20px; }

/* ========== SECTION TITLE ========== */
.section-title { text-align:center; font-size:28px; color:var(--primary); padding:40px 0 15px; font-weight:800; letter-spacing:1px; }

/* ========== DỊCH VỤ ========== */
.services { padding:60px 0; }
.services .section-title { font-size:32px; text-transform:none; color:#184f35; padding-top:0; margin-bottom:10px; }
.services-desc { text-align:center; color:#333; max-width:900px; margin:0 auto 40px; font-size:15px; font-weight:500; }

.service-tabs-new { display:flex; justify-content:center; gap:40px; margin-bottom:40px; }
.tab-btn { 
  padding:10px 0; 
  border:none; 
  background:none; 
  color:#184f35; 
  font-weight:700; 
  font-size:16px; 
  cursor:pointer; 
  transition:0.3s; 
  position:relative;
  opacity:0.6;
}
.tab-btn sup { font-size:10px; margin-left:2px; vertical-align:super; }
.tab-btn:hover { opacity:1; }
.tab-btn.active { opacity:1; }
.tab-btn.active::after {
  content: '';
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:3px;
  background:#184f35;
}

.tab-content { display:none; position:relative; }
.tab-content.active { display:block; }

.service-wrapper { position:relative; padding:0 50px; }
.service-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:25px; }

.service-card { 
  position:relative;
  background:white; 
  border-radius:25px; 
  overflow:hidden; 
  box-shadow:0 10px 30px rgba(0,0,0,0.08); 
  transition:0.4s; 
  aspect-ratio: 16/10;
}
.service-card:hover { transform:translateY(-8px); box-shadow:0 15px 40px rgba(24,79,53,0.15); }
.service-card img { width:100%; height:100%; object-fit:cover; }

.service-card .card-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0,0,0,0.4) 0%, transparent 40%);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:20px;
}

.service-title { 
  position:absolute;
  bottom:20px;
  left:0;
  width:100%;
  color:white;
  font-size:16px;
  font-weight:700;
  text-transform:uppercase;
  text-align:center;
  text-shadow:0 2px 4px rgba(0,0,0,0.5);
  padding:0 15px;
}

.btn-chu-thich { 
  background:rgba(255,255,255,0.2); 
  backdrop-filter: blur(5px);
  border: 1px solid rgba(255,255,255,0.8);
  color:white; 
  padding:8px 25px; 
  border-radius:10px; 
  font-size:14px; 
  font-weight:600;
  transition:0.3s;
}
.service-card:hover .btn-chu-thich { background:white; color:#184f35; }

.nav-arrow {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:45px;
  height:45px;
  border-radius:12px;
  background:white;
  border:1px solid #184f35;
  color:#184f35;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:10;
  transition:0.3s;
  box-shadow:0 4px 10px rgba(0,0,0,0.1);
}
.nav-arrow:hover { background:#184f35; color:white; }
.nav-arrow.prev { left:-10px; }
.nav-arrow.next { right:-10px; }

/* ========== STATS ========== */
.stats { padding:80px 0; background:white; }
.stats-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:0; }
.stat-item { 
  text-align:left; 
  padding:0 40px; 
  position:relative;
}
.stat-item:not(:last-child)::after {
  content: '';
  position:absolute;
  right:0;
  top:0;
  height:100%;
  width:1px;
  background:#d1e0d7;
}
.stat-item h3 { 
  font-size:36px; 
  color:#184f35; 
  font-weight:800; 
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:10px;
}
.stat-item h4 { 
  font-size:18px; 
  color:#184f35; 
  margin-bottom:20px; 
  font-weight:700;
  text-transform:none;
}
.stat-item p { 
  font-size:14px; 
  color:#333; 
  line-height:1.8; 
  text-align:justify;
}

/* ========== ALBUM ========== */
.album-section { 
  padding:80px 0; 
  background:#e1eae4; 
  margin:40px 20px;
  border-radius:80px;
}
.album-layout { 
  display:grid; 
  grid-template-columns: 1fr 2fr;
  align-items: center; 
  gap:40px; 
}
.album-text { padding:0 40px; }
.album-text span { 
  display:block;
  font-size:14px; 
  color:#333; 
  margin-bottom:5px;
  font-weight:500;
}
.album-text h2 { 
  color:#184f35; 
  font-size:36px; 
  margin-bottom:15px; 
  font-weight:800; 
  line-height:1.2;
}
.album-text p { 
  color:#333; 
  margin-bottom:30px; 
  font-size:16px; 
  font-weight:500;
}
.btn-view { 
  display:inline-flex; 
  align-items:center;
  gap:8px;
  padding:12px 30px; 
  background:white; 
  color:#184f35; 
  border:1px solid #184f35;
  border-radius:10px; 
  font-weight:700; 
  font-size:14px; 
  transition:0.3s; 
}
.btn-view:hover { 
  background:#184f35; 
  color:white; 
}

.album-images { 
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap:20px;
  padding-right:40px;
}

.album-card-home {
  position:relative;
  border-radius:20px;
  overflow:hidden;
  box-shadow: 0 10px 25px rgba(0,0,0,0.1);
  transition: 0.4s;
  background: white;
}

.album-card-home:nth-child(1) { grid-row: span 1; }
.album-card-home:nth-child(2) { grid-row: span 2; height: 100%; }
.album-card-home:nth-child(3) { grid-row: span 1; }
.album-card-home:nth-child(4) { grid-row: span 1; }
.album-card-home:nth-child(5) { grid-row: span 1; }

.album-card-home img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition: 0.5s;
}

.album-card-home .album-overlay {
  position:absolute;
  inset:0;
  background: linear-gradient(to top, rgba(24,79,53,0.8), transparent);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  opacity:0;
  transition: 0.3s;
  padding:20px;
  text-align:center;
}

.album-card-home:hover .album-overlay {
  opacity:1;
}

.album-card-home:hover img {
  transform: scale(1.1);
}

.album-overlay h4 {
  color:white;
  font-size:16px;
  font-weight:700;
  margin-bottom:15px;
  text-transform:uppercase;
}

.btn-detail-sm {
  padding:8px 20px;
  background:transparent;
  border:1px solid white;
  color:white;
  border-radius:10px;
  font-size:12px;
  font-weight:600;
  transition: 0.3s;
}

.btn-detail-sm:hover {
  background:white;
  color:#184f35;
}

/* Kiểu riêng cho card có sẵn overlay như trong ảnh */
.album-card-home.featured-overlay .album-overlay {
  opacity:1;
  background: linear-gradient(to top, rgba(24,79,53,0.9), rgba(24,79,53,0.4));
}

/* ========== VIDEOS ========== */
.video-section { padding:60px 0; background:white; }
.video-section .section-title { font-size:28px; color:#184f35; margin-bottom:5px; }
.video-subtitle { text-align:center; color:#184f35; font-size:15px; margin-bottom:40px; font-weight:500; }

.video-layout { 
  display:grid; 
  grid-template-columns: repeat(4, 1fr); 
  gap:20px; 
  max-width:1200px; 
  margin:0 auto;
}

.video-item-vertical {
  width:100%;
  aspect-ratio: 9/16;
  border-radius:15px;
  overflow:hidden;
  box-shadow: 0 10px 25px rgba(0,0,0,0.1);
  background:black;
  transition: 0.3s;
}
.video-item-vertical:hover { transform: translateY(-5px); box-shadow: 0 15px 35px rgba(24,79,53,0.2); }
.video-item-vertical iframe { width:100%; height:100%; border:none; }

.btn-solid { 
  display:inline-block; 
  padding:12px 35px; 
  background:#184f35; 
  color:white; 
  border-radius:30px; 
  font-weight:700; 
  font-size:14px; 
  transition:0.3s; 
  border:none;
  cursor:pointer;
}
.btn-solid:hover { background:#236e4b; transform:translateY(-2px); }

/* ========== LÝ DO ========== */
.reasons { padding:80px 0; background:white; }
.reason-title { 
  display:flex; 
  flex-direction:column; 
  align-items:center; 
  justify-content:center; 
  gap:5px; 
  margin-bottom:50px; 
  text-align:center;
}
.reason-title .large-num { 
  font-size: 80px; 
  color: #8bb39a; 
  font-weight: 800; 
  line-height: 1; 
}
.reason-title h2 { 
  font-size: 28px; 
  color: #184f35; 
  font-weight: 800; 
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1.3;
}

.reasons-grid { 
  display:grid; 
  grid-template-columns: repeat(3, 1fr); 
  gap:30px; 
}

.reason-card { 
  background: white; 
  padding: 40px 30px; 
  border-radius: 12px; 
  box-shadow: 0 10px 35px rgba(0,0,0,0.05); 
  text-align: left; 
  display: flex;
  flex-direction: column;
  gap: 20px;
  border: 1px solid #f5f5f5;
  transition: 0.3s;
}
.reason-card:hover { transform: translateY(-5px); box-shadow: 0 15px 45px rgba(24,79,53,0.1); }

.reason-card-header {
  display: flex;
  align-items: center;
  gap: 15px;
}

.reason-card .num-badge {
  width: 42px;
  height: 42px;
  background: #184f35;
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 15px;
  flex-shrink: 0;
}

.reason-card h3 { 
  color: #184f35; 
  font-size: 20px; 
  font-weight: 800;
  margin: 0;
}

.reason-card p { 
  font-size: 14.5px; 
  color: #333; 
  line-height: 1.8; 
  margin: 0;
  text-align: justify;
}

/* ========== TIN TỨC (HOMEPAGE) ========== */
.news { padding:50px 0; }
.news-subtitle { text-align:center; color:var(--text-gray); font-size:14px; margin-top:-5px; }
.news-divider { text-align:center; font-size:30px; color:var(--divider); margin:8px 0 25px; letter-spacing:6px; }
.news-grid-top { display:grid; grid-template-columns:repeat(2, 1fr); gap:16px; margin-bottom:16px; }
.news-grid-bottom { display:grid; grid-template-columns:repeat(2, 1fr); gap:16px; }
.news-card-large { position:relative; border-radius:10px; overflow:hidden; display:block; aspect-ratio:16/9; }
.news-card-large img { width:100%; height:100%; object-fit:cover; }
.news-card-large .overlay { position:absolute; inset:0; background:linear-gradient(to top, rgba(24,79,53,0.92) 0%, rgba(24,79,53,0.5) 50%, transparent 100%); padding:20px; display:flex; flex-direction:column; justify-content:flex-end; color:white; }
.news-card-large .overlay h4 { font-size:15px; line-height:1.4; margin-bottom:6px; }
.news-card-small { display:flex; gap:12px; background:white; border-radius:10px; padding:10px; box-shadow:0 2px 10px rgba(0,0,0,0.05); }
.news-card-small img { width:130px; height:100px; object-fit:cover; border-radius:6px; flex-shrink:0; }
.news-card-small h4 { font-size:13.5px; color:var(--text-dark); margin-bottom:8px; line-height:1.4; }

/* ========== FOOTER ========== */
footer { 
  background:#184f35; 
  color:white; 
  padding:80px 0 30px; 
  margin:40px 20px 20px;
  border-radius:80px 80px 20px 20px;
}
.footer-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:60px; padding-bottom:60px; }
.ft-col h4 { 
  color:#fff; 
  margin-bottom:25px; 
  font-size:16px; 
  font-weight:800;
  letter-spacing:1px; 
  text-transform: uppercase;
}
.ft-list { list-style:none; }
.ft-list li { padding:8px 0; font-size:14px; color:white; font-weight:600; display:flex; align-items:center; gap:10px; }
.ft-list li a { color:white; transition:0.2s; }
.ft-list li a:hover { opacity:0.8; }
.fb-embed iframe { background:white; border-radius:10px; overflow:hidden; }

.footer-bottom { 
  display:flex; 
  justify-content:space-between; 
  align-items:center; 
  padding-top:30px; 
  border-top:1px solid rgba(255,255,255,0.1); 
  font-size:14px; 
  color:white; 
  font-weight:700;
}
.social-icons { display:flex; gap:12px; }
.social-icons a { 
  width:42px; 
  height:42px; 
  border-radius:50%; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  color:white; 
  font-size:18px;
  transition:0.3s; 
}
.si-ig { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
.si-tt { background: #000; }
.si-fb { background: #1877f2; }
.si-yt { background: #ff0000; }
.si-zl { background: #0068ff; }
.social-icons a:hover { transform:scale(1.1); }

/* ========== FLOATING BUTTONS ========== */
.floating-btns { position:fixed; left:20px; bottom:150px; display:flex; flex-direction:column; gap:15px; z-index:100; }
.f-btn { 
  width:50px; 
  height:50px; 
  border-radius:50%; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  color:white; 
  font-size:20px; 
  background: #a6c8ff;
  border: 4px solid #fff;
  box-shadow: 0 5px 15px rgba(0,104,255,0.3);
  transition: 0.3s;
}
.f-btn i { color: #0068ff; }
.f-zalo { font-weight: 800; color: #0068ff; font-size: 16px; }
.f-btn:hover { transform: scale(1.1); background: #fff; }

.scroll-to-top {
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.scroll-to-top:hover {
  background: #236e4b;
  transform: scale(1.1);
}

@media (max-width: 768px) {
  .scroll-to-top {
    right: auto;
    left: 20px;
  }
  
  /* Footer mobile left align */
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 35px;
    text-align: left !important;
    justify-items: start !important;
  }
  
  .ft-col {
    text-align: left !important;
    width: 100%;
  }
  
  .ft-col h4,
  .ft-list,
  .ft-list li,
  .ft-list li a,
  .fb-embed {
    text-align: left !important;
  }
  
  .footer-bottom {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
    text-align: left;
  }
  
  /* Rental page mobile optimization */
  .rental-img-container {
    height: auto !important;
    aspect-ratio: unset !important;
  }
  .rental-img-container .main-rental-img {
    object-fit: contain !important;
    width: 100% !important;
    height: auto !important;
  }
  
  .rental-gallery-thumbs {
    gap: 6px !important;
    padding: 10px !important;
  }
  
  .rental-gallery-thumbs img {
    width: 35px !important;
    height: 35px !important;
    border-radius: 4px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
  }
}

/* =====================================================
   TRANG CHI TIẾT — DỊCH VỤ / ALBUM / TIN TỨC
   ===================================================== */
.breadcrumb { font-size:13px; color:#888; margin-bottom:18px; }
.breadcrumb a { color:var(--primary); }
.breadcrumb a:hover { text-decoration:underline; }
.breadcrumb span { color:#555; font-weight:600; }
.page-heading { font-size:28px; color:var(--primary); text-align:center; margin-bottom:8px; font-weight:800; }
.page-sub { text-align:center; color:#666; margin-bottom:30px; font-size:14px; }

.detail-layout { display:grid; grid-template-columns:2fr 1fr; gap:30px; }
.detail-title { font-size:26px; color:var(--primary); margin-bottom:15px; font-weight:800; }
.detail-image { width:100%; border-radius:10px; margin-bottom:20px; }
.detail-excerpt { font-size:15px; color:#555; padding:15px 18px; background:#f5f8f6; border-left:4px solid var(--primary); border-radius:6px; margin-bottom:20px; }
.detail-content { font-size:15px; line-height:1.8; color:#333; }
.detail-content img { max-width:100%; border-radius:6px; margin:15px 0; }
.detail-content h2, .detail-content h3 { color:var(--primary); margin:20px 0 10px; }
.detail-cta { display:flex; gap:12px; flex-wrap:wrap; margin-top:25px; padding-top:20px; border-top:1px solid #eee; }
.btn-cta { display:inline-flex; align-items:center; gap:8px; padding:11px 22px; background:var(--primary); color:white; border-radius:30px; font-weight:600; font-size:14px; }
.btn-cta:hover { background:var(--primary-hover); }
.btn-cta.btn-fb { background:#0084ff; }
.detail-sidebar { background:#f8faf9; padding:20px; border-radius:10px; height:fit-content; }
.detail-sidebar h3 { color:var(--primary); font-size:16px; margin-bottom:15px; padding-bottom:10px; border-bottom:2px solid var(--primary-light); }
.related-item { display:flex; gap:10px; padding:10px 0; border-bottom:1px solid #eee; align-items:center; color:#333; }
.related-item:hover { color:var(--primary); }
.related-item img { width:70px; height:55px; object-fit:cover; border-radius:5px; flex-shrink:0; }
.related-item span { font-size:13px; font-weight:600; line-height:1.4; }

.album-filter { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:25px; }
.filter-btn { padding:8px 18px; border:1px solid #ddd; border-radius:25px; color:#555; font-size:13px; font-weight:600; transition:0.2s; }
.filter-btn:hover, .filter-btn.active { background:var(--primary); color:white; border-color:var(--primary); }
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:20px; }
.gallery-card { background:white; border-radius:10px; overflow:hidden; box-shadow:0 3px 15px rgba(0,0,0,0.06); color:inherit; transition:0.3s; }
.gallery-card:hover { transform:translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,0.12); }
.gallery-img { position:relative; }
.gallery-img img { width:100%; height:200px; object-fit:cover; }
.gallery-badge { position:absolute; bottom:10px; right:10px; background:rgba(0,0,0,0.7); color:white; padding:4px 10px; border-radius:15px; font-size:11px; font-weight:600; }
.gallery-info { padding:15px 18px; }
.gallery-cat { display:inline-block; background:var(--primary-light); color:var(--primary); padding:3px 10px; border-radius:12px; font-size:11px; font-weight:600; margin-bottom:8px; }
.gallery-info h3 { font-size:15px; color:#222; margin-bottom:8px; line-height:1.4; }
.gallery-info p { font-size:12.5px; color:#777; margin-bottom:12px; }
.gallery-meta { display:flex; justify-content:space-between; font-size:11.5px; color:#999; padding-top:10px; border-top:1px solid #f0f0f0; }
.album-meta-bar { display:flex; gap:18px; justify-content:center; color:#666; font-size:13px; margin-bottom:25px; flex-wrap:wrap; }
.photo-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:12px; }
.photo-item img { width:100%; height:220px; object-fit:cover; border-radius:6px; cursor:zoom-in; transition:0.3s; }
.photo-item img:hover { transform:scale(1.03); }

.news-list-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:20px; margin-bottom:30px; }
.news-list-card { background:white; border-radius:10px; overflow:hidden; box-shadow:0 3px 12px rgba(0,0,0,0.05); color:inherit; transition:0.3s; }
.news-list-card:hover { transform:translateY(-4px); box-shadow:0 10px 25px rgba(0,0,0,0.1); }
.news-list-card img { width:100%; height:180px; object-fit:cover; }
.news-list-body { padding:14px 16px; }
.news-list-body h3 { font-size:14.5px; color:#222; margin-bottom:8px; line-height:1.4; min-height:42px; }
.news-list-body p { font-size:12.5px; color:#777; margin-bottom:10px; line-height:1.5; }
.news-list-meta { display:flex; gap:15px; font-size:11.5px; color:#888; padding-top:10px; border-top:1px solid #f0f0f0; }
.pagination { display:flex; justify-content:center; gap:6px; margin:25px 0; }
.pagination a { width:38px; height:38px; display:flex; align-items:center; justify-content:center; border:1px solid #ddd; border-radius:6px; color:#555; font-weight:600; font-size:13px; }
.pagination a:hover, .pagination a.active { background:var(--primary); color:white; border-color:var(--primary); }
.post-article { max-width:800px; margin:0 auto; }
.post-title { font-size:28px; color:var(--primary); margin-bottom:12px; font-weight:800; line-height:1.3; }
.post-meta { display:flex; gap:20px; color:#888; font-size:13px; margin-bottom:20px; padding-bottom:15px; border-bottom:1px solid #eee; }
.post-cover { width:100%; border-radius:10px; margin-bottom:20px; }
.post-excerpt { padding:15px 20px; background:#f5f8f6; border-left:4px solid var(--primary); border-radius:6px; font-size:15px; color:#444; font-style:italic; margin-bottom:25px; }
.post-content { font-size:15.5px; line-height:1.85; color:#333; }
.post-content img { max-width:100%; border-radius:6px; margin:20px 0; }
.post-content h2 { color:var(--primary); margin:25px 0 12px; font-size:20px; }
.post-content h3 { color:var(--primary-hover); margin:20px 0 10px; font-size:17px; }
.post-content p { margin-bottom:14px; }
.post-share { margin-top:30px; padding-top:20px; border-top:1px solid #eee; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.share-fb { display:inline-flex; align-items:center; gap:6px; padding:8px 16px; background:#1877f2; color:white; border-radius:6px; font-size:13px; }
.related-news { margin-top:40px; padding-top:25px; border-top:2px solid #f0f0f0; }
.related-news h3 { color:var(--primary); margin-bottom:18px; font-size:18px; }

/* =====================================================
   RESPONSIVE - OPTIMIZED FOR ALL DEVICES
   ===================================================== */
.mobile-only-nav { display: none; }
.desktop-only-nav { display: flex; }

@media (max-width: 1024px) {
  .container { padding: 0 20px; }
  .nav-left { padding-right: 60px; }
  .nav-right { padding-left: 60px; }
  .logo-circle-dip { width: 110px; height: 110px; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .reasons-grid { grid-template-columns: repeat(2, 1fr); }
  .album-layout { grid-template-columns: 1fr; }
  .album-images { padding-right: 0; }
}

@media (max-width: 768px) {
  .desktop-only-nav { display: none; }
  .mobile-only-nav { display: none; }
  .mobile-only-nav.mobile-open { display: flex; }

  /* Header Mobile */
  .header-top-row { display: none; }
  .custom-header { 
    position: sticky; 
    top: 0; 
    background: #184f35; 
    padding: 8px 0; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.15); 
    z-index: 9999;
  }
  .main-nav-container { 
    padding-bottom: 0; 
    height: 55px; 
    display: flex;
    align-items: center;
  }
  
  .logo-wrapper { 
    position: absolute; 
    left: 15px; 
    top: 50%; 
    transform: translateY(-50%); 
    z-index: 10001;
  }
  .logo-circle-dip { 
    width: 50px; 
    height: 50px; 
    top: 0;
    box-shadow: none;
    border: 1.5px solid rgba(255,255,255,0.3);
    padding: 0;
  }
  
  .mobile-menu-btn { 
    display: flex; 
    margin-left: auto; 
    margin-right: 15px;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: rgba(255,255,255,0.15);
    z-index: 10001;
  }

  .nav-links { 
    position: fixed;
    top: 71px;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255,255,255,0.98);
    backdrop-filter: blur(10px);
    flex-direction: column;
    padding: 30px 20px;
    gap: 0;
    z-index: 9998;
    overflow-y: auto;
    border-radius: 0;
    box-shadow: none;
  }
  .nav-links.mobile-open { display: flex; animation: slideInLeft 0.3s ease-out; }
  
  @keyframes slideInLeft {
    from { opacity: 0; transform: translateX(20px); }
    to { opacity: 1; transform: translateX(0); }
  }

  .nav-links li { 
    width: 100%; 
    border-bottom: 1px solid #f0f0f0;
    margin: 0;
  }
  .nav-links li:last-child { border: none; }
  .nav-links li a { 
    color: #184f35; 
    padding: 18px 10px; 
    font-size: 16px; 
    font-weight: 700;
    justify-content: space-between;
    width: 100%;
  }

  /* Hero Slider */
  .hero-slider-wrapper { height: 350px; background: #000; }
  .slide img { height: 100%; object-fit: contain; }
  .slider-nav-btn { display: none; } /* Hide arrows on mobile for cleaner look */
  
  /* Sections General */
  .section-title { font-size: 24px; padding: 40px 0 10px; font-weight: 800; }
  .services-desc { padding: 0 15px; font-size: 14px; margin-bottom: 30px; }
  
  /* Services Tabs */
  .service-tabs-new { 
    gap: 10px; 
    overflow-x: auto; 
    justify-content: flex-start; 
    padding: 0 15px 15px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .service-tabs-new::-webkit-scrollbar { display: none; }
  .tab-btn { white-space: nowrap; font-size: 14px; padding: 8px 15px; background: #f5f8f6; border-radius: 20px; }
  .tab-btn.active { background: #184f35; color: white; opacity: 1; }
  .tab-btn.active::after { display: none; }
  
  /* Grids */
  .service-grid { grid-template-columns: 1fr; gap: 20px; padding: 0 15px; }
  .service-card { aspect-ratio: 16/10; border-radius: 20px; }
  .service-title { font-size: 14px; bottom: 15px; }
  
  .stats { padding: 50px 0; }
  .stats-grid { grid-template-columns: 1fr; gap: 40px; }
  .stat-item { padding: 0 20px; text-align: center; }
  .stat-item h3 { justify-content: center; font-size: 32px; }
  .stat-item h4 { font-size: 16px; margin-bottom: 10px; }
  .stat-item:not(:last-child)::after {
    width: 80px;
    height: 1px;
    top: auto;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
  }

  .album-section { margin: 20px 10px; border-radius: 30px; padding: 40px 0; }
  .album-text { padding: 0 20px; margin-bottom: 30px; text-align: center; }
  .album-text h2 { font-size: 26px; }
  .album-text .btn-view { margin: 0 auto; display: flex; width: fit-content; }
  .album-images { grid-template-columns: 1fr; gap: 10px; padding: 0 10px; }
  .album-card-home { border-radius: 12px; aspect-ratio: 1/1; }
  .album-card-home:nth-child(2) { grid-row: span 1; }
  .album-card-home:nth-child(n+2) { display: none; } /* Show only 1 album on mobile */

  .video-section { display: none; } /* Hide videos on mobile */
  
  .reasons { padding: 50px 0; }
  .reasons-grid { grid-template-columns: 1fr; padding: 0 15px; gap: 20px; }
  .reason-card { padding: 30px 20px; }
  .reason-title span { font-size: 50px; }
  .reason-title h2 { font-size: 20px; }
  
  .news { padding: 40px 0; }
  .news-grid-top, .news-grid-bottom { grid-template-columns: 1fr; padding: 0 15px; gap: 20px; }
  .news-card-small { flex-direction: column; border-radius: 15px; }
  .news-card-small img { width: 100%; height: 180px; border-radius: 15px 15px 0 0; }

  /* Footer */
  footer { margin: 20px 0 0; border-radius: 30px 30px 0 0; padding: 50px 0 30px; }
  .footer-grid { grid-template-columns: 1fr; gap: 40px; text-align: center; padding: 0 20px 40px; }
  .ft-list li { justify-content: center; font-size: 14px; }
  .fb-embed { max-width: 100%; display: flex; justify-content: center; }
  .footer-bottom { flex-direction: column; gap: 25px; text-align: center; padding: 30px 20px 0; }

  /* Floating Buttons */
  .floating-btns { left: auto; right: 15px; bottom: 20px; gap: 10px; }
  .f-btn { width: 50px; height: 50px; border-width: 3px; }

  /* Detail Pages */
  .detail-layout { grid-template-columns: 1fr; }
  .page-heading { font-size: 24px; padding: 0 15px; margin-top: 20px; }
  .photo-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; padding: 0 10px; }
  .photo-item img { height: 180px; }
  .gallery-grid { grid-template-columns: 1fr; padding: 0 15px; }
  
  /* Pricing & Rentals */
  .pricing-grid { grid-template-columns: 1fr !important; gap: 20px !important; padding: 0 15px; }
  .rental-card { border-radius: 15px; }
  .rental-card img { height: 300px !important; }
  
  .btn-solid { width: 100%; text-align: center; padding: 15px; border-radius: 12px; }
}

@media (max-width: 480px) {
  .hero-slider-wrapper, .slide img { height: 250px; }
  .album-images { grid-template-columns: 1fr; }
  .video-layout { grid-template-columns: 1fr; }
  .photo-grid { grid-template-columns: 1fr; }
  .photo-item img { height: 250px; }
  .logo-circle-dip { width: 50px; height: 50px; }
  .main-nav-container { height: 50px; }
  .nav-links { top: 66px; }
  .section-title { font-size: 22px; }
}