/*
 Theme Name:   Printy Child Theme
 Theme URI:    https://printy.themerex.net/
 Description:  Printy Child Theme
 Author:       ThemeREX
 Author URI:   https://themerex.net/
 Template:     printy
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  printy
*/


/* =Theme customization starts here
------------------------------------------------------------ */
/* --- reset plugin defaults --- */
.wpgdprc-consent-bar__inner{
	padding:6px !important;
}
.wpgdprc-consent-bar__inner p{
	font-size:18px !important;
}
	.wpgdprc-button{
		padding: 6px !important;
		border-radius:30px !important;
		font-size:15px !important;
	}
@media(max-width:768px){
	.wpgdprc-consent-bar__inner p {
  font-size: 14px !important;
  line-height: 16px !important;
}
	.wpgdprc-button{
		font-size:14px !important;
		padding:4px 8px !important;
		border:1px solid #f3791d !important;
		border-radius:30px !important;
	}
}

.display-none{
display:none !important;}

a[href="/our-services/#printing"]::before {
  content: "Printing Services";
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
a[href="/our-services/#signage"]::before {
  content: "Signage Services";
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.sc_layouts_panel_inner .sc_socials.sc_socials_icons_names .socials_wrap .social_item + .social_item{
	margin-top:unset;
}

label span.wpcf7-list-item-label{
	font-size:18px !important;
}
    .sc_icons_size_large .sc_icon_type_svg svg, .sc_icons_size_large .sc_icon_type_svg object {
  width: 9em !important;
  height: 9em !important;
}
footer h2 .sc_item_title_text{
	margin-top:60px;
	margin-bottom: 48px;
  display: block;
}
.custom_links_list{
		font-size:1.4rem !important;
}

p, p span{
	font-size:1.4rem !important;
}
footer p,footer p span, footer .custom_links_list{
	font-size:18px !important;
}
p.elementor-heading-title.elementor-size-default {
	font-size:18px !important;
}

.elementor-heading-title{ -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; word-wrap: break-word; word-break: break-word; } 
@media(max-width:1024px){
	.page-heading h1 { font-weight:600; color:#fff; font-size:36px; }
	p.elementor-heading-title.elementor-size-default {
	font-size:16px !important;

}
			footer h2 .sc_item_title_text{
			margin-top:80px;}
}
.page-heading h1 { font-weight:600; color:#fff; }

.custom-heading{margin:0 auto}

.services-icons .sc_icons_columns_wrap{
	justify-content:center;
}

.dadosign-container {
  margin: 0 auto;
}

.dadosign-intro,
.dadosign-outro {
 max-width: 800px;
  margin: 0 auto 4rem auto;
  text-align: center;
}

.dadosign-paragraph {
  font-size: 1.125rem;
  color: #4b5563;
  margin-bottom: 1.5rem;
}

.dadosign-features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-bottom: 4rem;
}

@media (min-width: 768px) {
  .dadosign-features {
    grid-template-columns: repeat(3, 1fr);
  }
}

.dadosign-feature-card {
  background-color: white;
  padding: 1rem;
  border-radius: 1rem;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border-left: 6px solid #f26e20;
  transition: transform 0.3s ease;
}

.dadosign-feature-card:hover {
  transform: translateY(-4px);
}


.dadosign-feature-title {
  font-size: 1.45rem;
  font-weight: 600;
  color: #111827;
  margin-bottom: 0.5rem;
}

.dadosign-feature-text {
  color: #4b5563;
}

.dadosign-final-text {
  font-size: 1.45rem;
  font-weight: 600;
  color: #f26e20;
  margin-top: 2rem;
}


  .modular-gallery {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: 180px;
    gap: 16px;
    max-width: 1320px;
    margin: 0 auto;
  }

  .modular-gallery-item {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 6px 15px rgba(0,0,0,0.1);
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background-color: #000;
  }

  .modular-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
  }

  .modular-gallery-item:hover img {
    transform: scale(1.1);
  }

  .modular-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(242, 110, 32, 0.85);
    color: white;
    padding: 10px 15px;
    font-weight: 600;
    font-size: 1rem;
    opacity: 0;
    transition: opacity 0.3s ease;
    border-bottom-left-radius: 14px;
    border-bottom-right-radius: 14px;
  }

  .modular-gallery-item:hover .modular-caption {
    opacity: 1;
  }

  /* Spans */
  .span-2-col { grid-column: span 2; }
  .span-3-col { grid-column: span 3; }
  .span-4-col { grid-column: span 4; }
  .span-2-row { grid-row: span 2; }

  @media (max-width: 768px) {
    .modular-gallery {
      grid-template-columns: repeat(2, 1fr);
      grid-auto-rows: 160px;
    }
    .span-2-col, .span-3-col, .span-4-col, .span-2-row {
      grid-column: span 2 !important;
      grid-row: span 1 !important;
    }
	  .gallery-section-1 .modular-caption {
		  opacity:1;
	  }
  }

  @media (max-width: 480px) {
    .modular-gallery {
      grid-template-columns: 1fr;
      grid-auto-rows: 160px;
    }
    .span-2-col, .span-3-col, .span-4-col, .span-2-row {
      grid-column: span 1 !important;
      grid-row: span 1 !important;
    }
  }


.orange-boxes{
	margin: 0 auto !important; 
}
.feature-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 20px;
  justify-content: center;
  margin: 0 auto;
}

.feature-box {
  background-color: #f26e20;
  color: #fff;
  padding: 24px 28px;
  border-radius: 16px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.2);
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 400;
  min-height: 120px; /* ensure equal height */
  display: flex; /* center content vertically/horizontally */
  flex-direction: column;	
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Ensure exactly 3 columns on larger screens */
@media (min-width: 1024px) {
  .feature-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

  .feature-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 20px rgba(0,0,0,0.25);
  }

  @media (max-width: 768px) {
    .feature-box {
      max-width: 100%;
    }
  }


