/* =============================================================
 * 
 *    BDSM BRASIL BLOG  CSS Customizations
 * 
 *    ============================================================= */

/* 
 * 
 *    1. REMOVER BLOCO HERO DA HOME
 * 
 *  */

.bdsm-home-hero {
	
	  display: none !important;
	
}

/* ───────────────────
 * 
 *    2. REA DE CONTEDO
 * 
 *  */

.content-area {
	
	  max-width: 1200px;
	
	  margin: 0 auto;
	
	  padding: 0 20px;
	
	  box-sizing: border-box;
	
}

/* Remove display:grid do #posts (s o post-template deve ser grid) */

#posts {
	
	  display: block;
	
	  padding: 0 0 40px;
	
}

/* Cabealho da pgina de tag/categoria */

.page-header,

#posts .wp-block-query-title {
	
	  margin: 36px 0 28px !important;
	
	  padding-bottom: 16px;
	
	  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	
	  font-size: clamp(1.3rem, 3.5vw, 1.9rem) !important;
	
	  color: #f0e6c8 !important;
	
	  font-weight: 700 !important;
	
}

/* 
 * 
 *    3. GRID DE POSTS  BLOCK QUERY LOOP
 * 
 *  */

/* Post template = grid de 3 colunas */

#posts .wp-block-post-template,

#posts ul.wp-block-post-template {
	
	  display: grid !important;
	
	  grid-template-columns: repeat(3, 1fr) !important;
	
	  gap: 24px !important;
	
	  list-style: none !important;
	
	  padding: 0 !important;
	
	  margin: 0 !important;
	
	  align-items: start !important;
	
	  max-width: 100% !important;
	
	  width: 100% !important;
	
}

/* Cada item = card */

#posts .wp-block-post-template > li,

#posts li.wp-block-post {
	
	  position: relative;
	
	  border-radius: 10px;
	
	  overflow: hidden;
	
	  background: #1e1e1e;
	
	  border: 1px solid rgba(255, 255, 255, 0.07);
	
	  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
	
	  display: flex;
	
	  flex-direction: column;
	
	  list-style: none !important;
	
	  max-width: 100% !important;
	
}

#posts .wp-block-post-template > li:hover,

#posts li.wp-block-post:hover {
	
	  transform: translateY(-5px);
	
	  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.55);
	
	  border-color: rgba(201, 168, 76, 0.3);
	
}

/* Imagem de capa */

#posts .wp-block-post-featured-image {
	
	  width: 100%;
	
	  height: 200px !important;
	
	  overflow: hidden;
	
	  flex-shrink: 0;
	
	  display: block;
	
}

#posts .wp-block-post-featured-image a {
	
	  display: block;
	
	  height: 200px;
	
	  overflow: hidden;
	
}

#posts .wp-block-post-featured-image img {
	
	  width: 100%;
	
	  height: 200px !important;
	
	  object-fit: cover !important;
	
	  object-position: center !important;
	
	  display: block;
	
}

/* Ttulo do card */

#posts .wp-block-post-title {
	
	  font-size: 1rem !important;
	
	  line-height: 1.45 !important;
	
	  margin: 14px 18px 10px !important;
	
	  font-weight: 700 !important;
	
}

#posts .wp-block-post-title a {
	
	  color: #f0e6c8 !important;
	
	  text-decoration: none !important;
	
	  transition: color 0.18s;
	
}

#posts .wp-block-post-title a:hover {
	
	  color: #c9a84c !important;
	
}

/* Excerpt */

#posts .wp-block-post-excerpt {
	
	  flex: 1;
	
	  display: flex;
	
	  flex-direction: column;
	
	  padding: 0 18px 14px;
	
}

#posts .wp-block-post-excerpt__excerpt {
	
	  color: #999 !important;
	
	  font-size: 0.85rem !important;
	
	  line-height: 1.6 !important;
	
	  margin: 0 0 10px !important;
	
	  display: -webkit-box;
	
	  -webkit-line-clamp: 4;
	
	  -webkit-box-orient: vertical;
	
	  overflow: hidden;
	
}

#posts .wp-block-post-excerpt__more-link {
	
	  color: #c9a84c !important;
	
	  font-size: 0.82rem !important;
	
	  font-weight: 700 !important;
	
	  text-decoration: none !important;
	
	  letter-spacing: 0.02em;
	
	  transition: opacity 0.18s;
	
	  display: inline-block;
	
	  margin-top: auto;
	
}

#posts .wp-block-post-excerpt__more-link:hover {
	
	  opacity: 0.75;
	
	  text-decoration: underline !important;
	
}

/* Paginao */

#posts .wp-block-query-pagination,

.posts-navigation {
	
	  margin: 16px 0 40px;
	
	  display: flex;
	
	  justify-content: space-between;
	
	  gap: 16px;
	
	  flex-wrap: wrap;
	
}

#posts .wp-block-query-pagination-previous a,

#posts .wp-block-query-pagination-next a,

.posts-navigation a {
	
	  color: #c9a84c !important;
	
	  text-decoration: none !important;
	
	  font-weight: 600 !important;
	
	  font-size: 0.88rem !important;
	
	  padding: 8px 18px !important;
	
	  border: 1px solid rgba(201, 168, 76, 0.5) !important;
	
	  border-radius: 6px !important;
	
	  transition: background 0.18s, color 0.18s !important;
	
	  display: inline-block;
	
}

#posts .wp-block-query-pagination-previous a:hover,

#posts .wp-block-query-pagination-next a:hover,

.posts-navigation a:hover {
	
	  background: #c9a84c !important;
	
	  color: #1a1a1a !important;
	
}

/* 
 * 
 *    4. ICON GRID (barra de domnios)
 * 
 *  */

.wp-block-group:has(.bdsm-icon-grid) {
	
	  padding: 36px 20px 48px !important;
	
}

.bdsm-icon-grid {
	
	  display: grid;
	
	  grid-template-columns: repeat(5, 1fr);
	
	  gap: 14px;
	
	  max-width: 1100px;
	
	  margin: 0 auto;
	
}

.bdsm-icon-card {
	
	  display: block;
	
	  text-decoration: none !important;
	
	  color: #f0e6c8 !important;
	
	  background: rgba(255, 255, 255, 0.05);
	
	  border: 1px solid rgba(255, 255, 255, 0.1);
	
	  border-radius: 12px;
	
	  padding: 20px 12px;
	
	  text-align: center;
	
	  transition: background 0.22s, transform 0.22s, border-color 0.22s;
	
}

.bdsm-icon-card:hover {
	
	  background: rgba(201, 168, 76, 0.12);
	
	  border-color: rgba(201, 168, 76, 0.45);
	
	  transform: translateY(-3px);
	
	  color: #f0e6c8 !important;
	
}

.bdsm-icon-card-inner {
	
	  display: flex;
	
	  flex-direction: column;
	
	  align-items: center;
	
	  gap: 10px;
	
}

.bdsm-icon-img {
	
	  width: 44px;
	
	  height: 44px;
	
	  display: flex;
	
	  align-items: center;
	
	  justify-content: center;
	
	  background: rgba(201, 168, 76, 0.12);
	
	  border-radius: 50%;
	
	  flex-shrink: 0;
	
}

.bdsm-icon-img img.emoji {
	
	  width: 24px !important;
	
	  height: 24px !important;
	
	  margin: 0 !important;
	
}

.bdsm-icon-card-title {
	
	  font-size: 0.82rem;
	
	  font-weight: 600;
	
	  line-height: 1.35;
	
	  margin: 0;
	
	  color: #f0e6c8;
	
}

/* 
 * 
 *    5. HEADER
 * 
 *  */

.bdsm-site-header {
	
	  position: sticky;
	
	  top: 0;
	
	  z-index: 1000;
	
	  background: #111 !important;
	
	  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	
	  padding: 0 !important;
	
	  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.4);
	
}

.bdsm-header-inner {
	
	  max-width: 1200px;
	
	  margin: 0 auto;
	
	  padding: 0 20px;
	
	  height: 60px;
	
	  align-items: center !important;
	
	  gap: 16px !important;
	
}

.bdsm-header-site-title {
	
	  font-size: 1rem !important;
	
	  font-weight: 800 !important;
	
	  letter-spacing: 0.06em;
	
	  white-space: nowrap;
	
	  flex-shrink: 0;
	
}

.bdsm-header-site-title a {
	
	  color: #f0e6c8 !important;
	
	  text-decoration: none !important;
	
	  font-family: var(--wp--preset--font-family--bodoni-moda, Georgia, serif) !important;
	
}

.bdsm-header-site-title a:hover {
	
	  color: #c9a84c !important;
	
}

.bdsm-main-nav {
	
	  gap: 4px !important;
	
	  flex-wrap: nowrap;
	
}

.bdsm-main-nav .wp-block-navigation-item__content {
	
	  font-size: 0.88rem !important;
	
	  font-weight: 600 !important;
	
	  color: #ccc !important;
	
	  padding: 6px 10px !important;
	
	  border-radius: 6px;
	
	  transition: color 0.18s, background 0.18s;
	
	  white-space: nowrap;
	
}

.bdsm-main-nav .wp-block-navigation-item__content:hover {
	
	  color: #f0e6c8 !important;
	
	  background: rgba(255, 255, 255, 0.07);
	
}

.bdsm-main-nav .wp-block-navigation-item__content:focus {
	
	  outline: 2px solid #c9a84c;
	
	  outline-offset: 2px;
	
}

.bdsm-mega-container {
	
	  border: 1px solid rgba(255, 255, 255, 0.1) !important;
	
	  border-radius: 12px !important;
	
	  background: #161616 !important;
	
	  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.65) !important;
	
	  padding: 20px !important;
	
	  margin-top: 6px !important;
	
	  min-width: 560px !important;
	
}

.bdsm-mega-grid {
	
	  display: grid !important;
	
	  grid-template-columns: repeat(3, 1fr) !important;
	
	  gap: 8px !important;
	
}

.bdsm-mega-item {
	
	  display: flex !important;
	
	  align-items: flex-start !important;
	
	  gap: 10px !important;
	
	  padding: 10px 12px !important;
	
	  border-radius: 8px;
	
	  text-decoration: none !important;
	
	  color: #ccc !important;
	
	  transition: background 0.18s, color 0.18s;
	
}

.bdsm-mega-item:hover {
	
	  background: rgba(201, 168, 76, 0.1) !important;
	
	  color: #f0e6c8 !important;
	
}

.bdsm-mega-icon img.emoji {
	
	  width: 20px !important;
	
	  height: 20px !important;
	
	  margin-top: 2px;
	
}

.bdsm-mega-title {
	
	  display: block;
	
	  font-size: 0.88rem;
	
	  font-weight: 700;
	
	  color: #f0e6c8;
	
	  line-height: 1.3;
	
}

.bdsm-mega-desc {
	
	  display: block;
	
	  font-size: 0.76rem;
	
	  color: #888;
	
	  line-height: 1.4;
	
	  margin-top: 2px;
	
}

.wp-block-navigation__responsive-container-open {
	
	  color: #f0e6c8 !important;
	
	  background: rgba(255, 255, 255, 0.06) !important;
	
	  border: 1px solid rgba(255, 255, 255, 0.15) !important;
	
	  border-radius: 8px !important;
	
	  padding: 7px !important;
	
	  display: flex;
	
	  align-items: center;
	
	  justify-content: center;
	
}

#bdsm-tsw {
	
	  flex-shrink: 0;
	
	  margin-left: auto;
	
}

#bdsm-tags-btn {
	
	  border-color: rgba(255, 255, 255, 0.2) !important;
	
	  transition: background 0.18s, border-color 0.18s;
	
}

#bdsm-tags-btn:hover {
	
	  background: rgba(255, 255, 255, 0.08) !important;
	
	  border-color: rgba(255, 255, 255, 0.35) !important;
	
}

#bdsm-srch-btn:hover {
	
	  background: rgba(255, 255, 255, 0.08) !important;
	
}

#bdsm-tags-modal,

#bdsm-srch-bar {
	
	  min-width: 280px;
	
}

#bdsm-srch-inp:focus {
	
	  border-color: rgba(201, 168, 76, 0.6) !important;
	
	  box-shadow: 0 0 0 2px rgba(201, 168, 76, 0.15);
	
}

.wp-block-navigation__responsive-container.is-menu-open {
	
	  background: #111 !important;
	
	  padding: 20px !important;
	
}

.wp-block-navigation__responsive-container.is-menu-open

.wp-block-navigation__container {
	
	  gap: 4px !important;
	
	  padding-top: 12px;
	
}

.wp-block-navigation__responsive-container.is-menu-open

.wp-block-navigation-item__content {
	
	  font-size: 1.05rem !important;
	
	  padding: 12px 16px !important;
	
	  border-radius: 8px;
	
	  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	
	  color: #f0e6c8 !important;
	
}

.wp-block-navigation__responsive-container-close {
	
	  color: #f0e6c8 !important;
	
	  background: rgba(255, 255, 255, 0.06) !important;
	
	  border-radius: 8px !important;
	
	  padding: 6px !important;
	
}

/* 
 * 
 *    6. RESPONSIVO  MOBILE / TABLET
 * 
 *  */

@media (max-width: 1024px) {
	
	  #posts .wp-block-post-template,
	
	#posts ul.wp-block-post-template {
		
		    grid-template-columns: repeat(2, 1fr) !important;
		
		    gap: 18px !important;
		
	}
	
	.bdsm-icon-grid {
		
		    grid-template-columns: repeat(3, 1fr);
		
	}
	
	.bdsm-mega-container {
		
		    min-width: 400px !important;
		
	}
	
	.bdsm-mega-grid {
		
		    grid-template-columns: repeat(2, 1fr) !important;
		
	}
	
}

@media (max-width: 768px) {
	
	.bdsm-header-inner {
		
		    padding: 0 14px;
		
		    height: 56px;
		
		    gap: 10px !important;
		
	}
	
	.bdsm-header-site-title {
		
		    font-size: 0.88rem !important;
		
	}
	
	.bdsm-main-nav > .wp-block-navigation__responsive-container:not(.is-menu-open) {
		
		    display: none;
		
	}
	
	#bdsm-tsw {
		
		    gap: 6px !important;
		
	}
	
	#bdsm-tags-btn {
		
		    padding: 4px 9px !important;
		
		    font-size: 0.78rem !important;
		
	}
	
	  #bdsm-tags-modal,
	
	#bdsm-srch-bar {
		
		    right: 0 !important;
		
		    left: auto !important;
		
		    min-width: 240px;
		
		    max-width: calc(100vw - 28px);
		
	}
	
	  #posts .wp-block-post-template,
	
	#posts ul.wp-block-post-template {
		
		    grid-template-columns: 1fr !important;
		
		    gap: 16px !important;
		
	}
	
	.content-area {
		
		    padding: 0 14px;
		
	}
	
	  #posts .wp-block-post-featured-image,
	
	#posts .wp-block-post-featured-image a {
		
		    height: 180px !important;
		
	}
	
	#posts .wp-block-post-featured-image img {
		
		    height: 180px !important;
		
	}
	
	.bdsm-icon-grid {
		
		    grid-template-columns: repeat(2, 1fr);
		
		    gap: 10px;
		
	}
	
	.wp-block-group:has(.bdsm-icon-grid) {
		
		    padding: 24px 14px 36px !important;
		
	}
	
	.bdsm-icon-card {
		
		    padding: 16px 10px;
		
	}
	
	.bdsm-icon-card-title {
		
		    font-size: 0.78rem;
		
	}
	
	.bdsm-icon-img {
		
		    width: 38px;
		
		    height: 38px;
		
	}
	
}

@media (max-width: 420px) {
	
	.bdsm-header-site-title {
		
		    font-size: 0.82rem !important;
		
		    letter-spacing: 0.03em;
		
	}
	
	  #posts .wp-block-post-featured-image,
	
	#posts .wp-block-post-featured-image a {
		
		    height: 160px !important;
		
	}
	
	#posts .wp-block-post-featured-image img {
		
		    height: 160px !important;
		
	}
	
	.bdsm-icon-grid {
		
		    grid-template-columns: repeat(2, 1fr);
		
		    gap: 8px;
		
	}
	
	.bdsm-icon-card-title {
		
		    font-size: 0.74rem;
		
	}
	
	#bdsm-tags-btn span {
		
		    display: none;
		
	}
	
}
	}
	}
	}
	}
	}
	}
}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
	}
}
	}
	}
	}
	}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}