/* Inner templates: blog, single, pages, areas, quem somos, socio, midia, contato, 404. */

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal;
}

.dpn-entry img { max-width: 100%; height: auto; }
.dpn-entry a { color: var(--dpn-gold); }
.dpn-entry p { margin: 0 0 1em; }

/* Banner */
.dpn-inner-banner { width: 100%; line-height: 0; }
.dpn-inner-banner img { display: block; width: 100%; height: auto; }

/* Blog */
.dpn-blog { padding: 50px 0 40px; }
.dpn-post-title, .dpn-single-title { margin: 0 0 6px; font-weight: 700; line-height: 1.17; }
.dpn-post-title { font-size: 24px; }
.dpn-single-title { font-size: 28px; color: var(--dpn-gold); }
.dpn-post-title a { color: var(--dpn-gold); text-decoration: none; }
.dpn-post-meta { margin: 0; font-style: italic; font-weight: 300; color: var(--dpn-meta); font-size: 13px; line-height: 17px; }
.dpn-post-image { padding: 20px 0; }
.dpn-post-image img { max-width: 100%; height: auto; display: block; }
.dpn-read-more { color: var(--dpn-gold); font-weight: 700; font-size: 16px; text-decoration: none; }
.dpn-terms { margin: 0 0 2px; font-size: 14px; font-style: italic; font-weight: 300; color: var(--dpn-tag); }
.dpn-terms span { font-size: 16px; font-weight: 700; font-style: normal; color: var(--dpn-tag); }
.dpn-terms a { color: var(--dpn-tag); text-decoration: none; }
.dpn-terms a:hover { color: var(--dpn-gold); }
.dpn-tags { padding-top: 20px; }
.dpn-separator { margin: 40px 0; border: 0; border-top: 2px solid #d2d3d5; }
.dpn-not-post { font-size: 24px; }
.dpn-post-excerpt p { margin: 0 0 .8em; }

.dpn-share { padding-top: 15px; }
.dpn-share-title { margin: 0 0 6px; color: var(--dpn-tag); font-size: 17px; font-weight: 700; }
.dpn-share ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.dpn-share a {
	display: inline-block; padding: 6px 14px; background: var(--dpn-grey); color: #fff;
	font-size: 14px; text-decoration: none;
}
.dpn-share a:hover { background: var(--dpn-gold); }
.dpn-back { margin-top: 15px; }

/* Single midia: PDF link rendered as a button */
.category-midia-na-imprensa .dpn-entry a[href$=".pdf"] {
	display: inline-block; padding: 12px 24px; background: var(--dpn-gold); color: #fff;
	font-weight: 700; text-decoration: none;
}
.category-midia-na-imprensa .dpn-entry a[href$=".pdf"]:hover { background: var(--dpn-gold-dark, var(--dpn-gold)); }

/* Lead form */
.dpn-lead-form h4 { color: #1d3744; font-weight: 700; padding-bottom: 10px; line-height: 21px; font-size: 15px; margin: 0; }
.dpn-lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.dpn-lead-form input {
	display: block; width: 100%; box-sizing: border-box; height: 34px; padding: 6px 12px; margin-bottom: 12px;
	border: 1px solid var(--dpn-border); background: var(--dpn-light); border-radius: 0; font: inherit; font-size: 14px;
}
.dpn-lead-form button { float: right; border: 0; cursor: pointer; font-size: 16px; }

/* Sidebar */
.dpn-sidebar { min-width: 0; }
.dpn-side-block { padding-bottom: 40px; }
.dpn-tagcloud a { color: var(--dpn-grey); text-decoration: none; margin-right: 4px; }
.dpn-tagcloud a:hover { color: var(--dpn-ink); }
.dpn-side-title { text-align: center; font-size: 20px; color: var(--dpn-gold); font-weight: 700; margin: 0 0 10px; }
.dpn-categories select {
	width: 100%; height: 34px; border: 1px solid var(--dpn-border); border-radius: 0; background: #fff; font: inherit; font-size: 14px;
}
.dpn-archives ul { list-style: none; margin: 0; padding: 0; }
.dpn-archives li { padding: 2px 0; }
.dpn-archives a { color: #7e7e7e; font-size: 12px; text-decoration: none; }
.dpn-archives a:hover { color: var(--dpn-gold); }

/* Pagination (jPages look) */
.dpn-pagination { text-align: center; margin-top: 30px; }
.dpn-pagination ul { list-style: none; margin: 0; padding: 0; display: inline-flex; flex-wrap: wrap; gap: 4px; justify-content: center; }
.dpn-pagination a, .dpn-pagination span {
	display: block; min-width: 34px; padding: 6px 10px; box-sizing: border-box; text-align: center;
	border: 1px solid var(--dpn-border); color: var(--dpn-grey); text-decoration: none;
}
.dpn-pagination a:hover { background: var(--dpn-light); }
.dpn-pagination .current { background: var(--dpn-gold); border-color: var(--dpn-gold); color: #fff; }
.dpn-pagination .dots { border-color: transparent; }

/* Default page */
.dpn-page { padding: 40px 0 50px; }
/* Sócios: the partners grid follows the title, so the page's bottom space
   moves below the grid instead of opening a gap above it. */
.dpn-page.page-socios { padding-bottom: 0; }
.page-socios + .dpn-team { padding-top: 20px; padding-bottom: 50px; }
.dpn-page-title { font-size: 28px; font-weight: 700; margin: 0 0 20px; color: var(--dpn-ink); }

/* Depoimentos page */
.page-depoimentos blockquote {
	margin: 0 0 25px; padding: 37px 30px 30px 70px; border: 0;
	background: var(--dpn-light) url("../img/bkg-testimonial.png") no-repeat left top / 100% auto;
	font-style: italic; font-weight: 300; color: var(--dpn-grey);
}
.page-depoimentos blockquote p { margin: 0 0 15px; }
.page-depoimentos blockquote cite { display: block; font-style: normal; font-weight: 500; color: var(--dpn-ink); font-size: 17px; }

/* Areas */
.dpn-areas { padding: 30px 0 40px; }
.dpn-areas-grid { display: grid; grid-template-columns: 3fr 9fr; gap: 0; }
#sidebar-menu { border-right: 1px solid #404041; padding: 30px 15px 30px 0; }
#sidebar-menu ul { list-style: none; margin: 0; padding: 0; }
#sidebar-menu li { padding-bottom: 15px; }
#sidebar-menu a { color: var(--dpn-ink); font-size: 16px; font-weight: 400; text-decoration: none; }
#sidebar-menu li.active a { color: var(--dpn-gold); font-weight: 700; }
#sidebar-menu a:hover { color: var(--dpn-gold); }
#content-areas { padding: 15px 0 0 50px; min-width: 0; }
.dpn-area-image-row { display: grid; grid-template-columns: 2fr 1fr; align-items: center; padding-bottom: 30px; }
.dpn-area-image img { max-width: 100%; height: auto; display: block; }
.dpn-area-name { text-align: center; padding: 0 10px; }
.dpn-area-name span { font-size: 26px; line-height: 28px; color: var(--dpn-ink); }
.dpn-area-cta { margin-top: 30px; }
.dpn-area-links a {
	display: inline-block; padding: 10px 20px; margin: 0 20px 10px 0; background: var(--dpn-gold);
	color: #fff; font-style: italic; font-weight: 500; text-decoration: none;
}
.dpn-area-links a:hover { background: var(--dpn-gold-dark, var(--dpn-gold)); }

/* Quem somos */
#scroll-1, #scroll-2, #scroll-3, #scroll-4 { position: relative; top: -40px; height: 0; }
.dpn-who { padding-top: 40px; }
.dpn-who-grid { display: grid; grid-template-columns: 5fr 7fr; gap: 30px; align-items: start; }
.dpn-who-image img { max-width: 100%; height: auto; display: block; }
.dpn-presentation { margin: -150px 0 0; padding-left: 15px; position: relative; color: var(--dpn-gold); font-size: 15px; max-width: 150px; }
.dpn-presentation a { color: var(--dpn-gold); }
.dpn-who-text { font-size: 15px; line-height: 22px; padding-top: 40px; }
.dpn-who-text h2, .dpn-who-text h3, .dpn-who-text h4 { color: var(--dpn-ink); font-size: 26px; line-height: 29px; font-weight: 400; margin: 0 0 20px; }
.dpn-who-text p + h2, .dpn-who-text p + h3, .dpn-who-text p + h4 { margin-top: 40px; }

.dpn-innovation { padding-top: 40px; }
.dpn-innovation-box {
	display: grid; grid-template-columns: 10fr 2fr; border: 1px solid var(--dpn-border); padding-left: 30px;
}
.dpn-innovation-text { padding: 30px 20px 30px 0; }
.dpn-innovation-text h3 { margin: 0 0 5px; font-size: 17px; font-weight: 700; color: var(--dpn-gold); }
.dpn-innovation-text p { margin: 0; font-style: italic; font-weight: 500; font-size: 16px; }
.dpn-innovation-cta { padding: 35px 15px 30px; text-align: center; }

.dpn-qualities { padding-top: 50px; }
.dpn-qualities-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.dpn-quality { display: flex; align-items: center; gap: 15px; }
.dpn-quality img { width: 60px; height: auto; flex: none; }
.dpn-quality span { font-size: 18px; color: var(--dpn-ink); }

.dpn-associated { padding-top: 50px; }
.dpn-testimonials { padding-top: 60px; }
.dpn-testimonial-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.dpn-testimonial {
	margin: 0; padding: 37px 20px 30px 70px;
	background: var(--dpn-light) url("../img/bkg-testimonial.png") no-repeat left top / 100% auto;
	font-style: italic; font-weight: 300; color: var(--dpn-grey);
}
.dpn-testimonial p { margin: 0 0 15px; }
.dpn-testimonial cite { display: block; font-style: normal; }
.dpn-testimonial cite strong { display: block; font-weight: 500; color: var(--dpn-ink); font-size: 17px; }
.dpn-testimonial cite span { display: block; padding-top: 5px; font-size: 15px; color: var(--dpn-grey); }

/* Socio */
.dpn-socio { padding: 40px 0 30px; }
.dpn-socio-grid { display: grid; grid-template-columns: 4fr 8fr; gap: 30px; align-items: start; }
.dpn-socio-photo img { width: 100%; height: auto; display: block; }
.dpn-socio-name { margin: 0 0 5px; font-size: 26px; font-weight: 700; text-transform: uppercase; color: var(--dpn-ink); }
.dpn-socio-role { margin: 0 0 15px; color: var(--dpn-grey); }
.dpn-socio-info a { color: var(--dpn-gold); text-decoration: none; }
.dpn-socio-info img { vertical-align: middle; height: 20px; width: auto; margin-right: 4px; }
.dpn-socio-info p { margin: 0 0 8px; }
.dpn-socio-info .dpn-entry { margin-top: 15px; }

/* Midia */
.dpn-media { margin: 50px 0; }
.dpn-media-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 25px 20px; }
.dpn-media-card a { display: block; text-decoration: none; border: 1px solid #d2d3d5; background: #fff; }
.dpn-media-cover { display: block; height: 180px; overflow: hidden; background: #e9e9ea; }
.dpn-media-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dpn-media-title {
	display: block; padding: 10px 12px; background: #fff; color: var(--dpn-ink);
	font-size: 14px; font-weight: 400; line-height: 1.4;
}
.dpn-media-card a:hover .dpn-media-title { color: var(--dpn-gold); }

/* Contato */
.dpn-contact { padding: 40px 0 50px; color: var(--dpn-grey); }
.dpn-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.dpn-contact-title { margin: 0 0 25px; font-size: 22px; font-weight: 400; color: var(--dpn-ink); }
.dpn-contact-info .dpn-entry > :is(h1, h2, h3, h4):first-child { margin: 0 0 25px; font-size: 18px; font-weight: 300; text-transform: uppercase; color: var(--dpn-ink); }
.dpn-contact-info p { margin: 0 0 6px; }
.dpn-contact-info img { vertical-align: middle; margin-right: 4px; }
.dpn-contact-info a { color: inherit; }
.dpn-contact-form label { display: block; padding-left: 30px; color: var(--dpn-grey); }
.dpn-contact-form input[type="text"], .dpn-contact-form input[type="email"], .dpn-contact-form select, .dpn-contact-form textarea {
	display: block; width: 100%; box-sizing: border-box; padding: 6px 12px; border: 1px solid var(--dpn-border);
	background: var(--dpn-light); border-radius: 0; font: inherit; font-size: 14px;
}
.dpn-contact-form input[type="text"], .dpn-contact-form input[type="email"], .dpn-contact-form select { height: 34px; }
.dpn-contact-form p { margin: 0 0 15px; }
.dpn-contact-form .dpn-consent { display: flex; align-items: center; gap: 8px; }
.dpn-contact-form .dpn-consent label { padding: 0; font-size: 14px; }
.dpn-contact-form .dpn-consent a { color: var(--dpn-gold); }
.dpn-contact-form button { border: 0; cursor: pointer; font-size: 16px; }

/* 404 */
.dpn-404 { padding: 50px 0; text-align: center; }
.dpn-404-title { font-size: 32px; margin: 0 0 15px; }

/* Responsive */
@media (max-width: 1200px) {
	.dpn-presentation { margin-top: -110px; }
	#content-areas { padding-left: 30px; }
}
@media (max-width: 992px) {
	.dpn-areas-grid { grid-template-columns: 1fr; }
	#sidebar-menu { border-right: 0; border-bottom: 1px solid #404041; padding: 0 0 15px; margin-bottom: 20px; }
	#content-areas { padding-left: 0; }
	.dpn-who-grid, .dpn-socio-grid, .dpn-contact-grid { grid-template-columns: 1fr; }
	.dpn-presentation { margin-top: 10px; max-width: none; }
	.dpn-who-text { padding-top: 0; }
	.dpn-innovation-box { grid-template-columns: 1fr; padding-left: 20px; }
	.dpn-innovation-cta { text-align: left; padding: 0 0 25px; }
	.dpn-qualities-row { grid-template-columns: 1fr 1fr; }
	.dpn-socio-photo { max-width: 360px; }
	.dpn-media-grid { grid-template-columns: repeat(3, 1fr); }
	.dpn-sidebar { margin-top: 30px; }
}
@media (max-width: 768px) {
	.dpn-media-grid { grid-template-columns: repeat(2, 1fr); }
	.dpn-testimonial-grid { grid-template-columns: 1fr; }
	.dpn-area-image-row { grid-template-columns: 1fr; }
	.dpn-area-name { padding-top: 15px; }
}
@media (max-width: 600px) {
	.dpn-lead-grid { grid-template-columns: 1fr; }
	.dpn-qualities-row { grid-template-columns: 1fr; }
	.dpn-testimonial, .page-depoimentos blockquote { padding-left: 40px; }
	.dpn-post-title { font-size: 21px; }
	.dpn-single-title { font-size: 24px; }
}
@media (max-width: 480px) {
	.dpn-media-grid { grid-template-columns: 1fr; }
}

/* WPForms: post lead form and contact page (WPForms stylesheet is off) */
.dpn-lead-form .wpforms-container, .dpn-contact-form .wpforms-container { margin: 0; padding: 0; }
.dpn-lead-form .wpforms-form, .dpn-contact-form .wpforms-form { margin: 0; }
.dpn-lead-form .wpforms-field-hp, .dpn-contact-form .wpforms-field-hp { display: none !important; }
.dpn-lead-form .wpforms-field, .dpn-contact-form .wpforms-field { display: block; margin: 0; padding: 0; }
.dpn-lead-form label.wpforms-error, .dpn-contact-form label.wpforms-error, .dpn-lead-form .wpforms-error, .dpn-contact-form .wpforms-error {
	display: block; color: #d63638; font-size: 12px; font-weight: 400; margin-top: 3px; padding: 0;
}
.dpn-lead-form .wpforms-confirmation-container-full, .dpn-contact-form .wpforms-confirmation-container-full,
.dpn-lead-form .wpforms-confirmation-container, .dpn-contact-form .wpforms-confirmation-container {
	margin: 0; padding: 12px 15px; background: var(--dpn-light); border: 1px solid var(--dpn-border); color: var(--dpn-ink); font-size: 14px;
}
.dpn-lead-form .wpforms-confirmation-container-full p, .dpn-contact-form .wpforms-confirmation-container-full p { margin: 0; color: var(--dpn-ink); }

/* Lead form: two columns, name + Whatsapp left, e-mail + button right */
.dpn-lead-form .wpforms-form { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; grid-auto-flow: column; gap: 0 15px; }
.dpn-lead-form .wpforms-field-container { display: contents; }
.dpn-lead-form .wpforms-field-label {
	position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; white-space: nowrap;
}
.dpn-lead-form .wpforms-field input[type="text"], .dpn-lead-form .wpforms-field input[type="email"] {
	display: block; width: 100%; max-width: none; box-sizing: border-box; height: 34px; padding: 6px 12px; margin: 0 0 12px;
	border: 1px solid var(--dpn-border); background: var(--dpn-light); border-radius: 0; font: inherit; font-size: 14px;
}
.dpn-lead-form .wpforms-submit-container { margin: 0; padding: 0; text-align: right; }
.dpn-lead-form .wpforms-submit {
	display: inline-block; background: var(--dpn-gold); color: #fff; font-weight: 500; font-style: italic; font-size: 16px;
	line-height: 1.5; padding: 8px 10px; border: 0; border-radius: 0; cursor: pointer;
}
.dpn-lead-form .wpforms-submit:hover, .dpn-lead-form .wpforms-submit:focus { background: var(--dpn-gold-dark); }
@media (max-width: 767px) {
	.dpn-lead-form .wpforms-form { grid-template-columns: 1fr; grid-template-rows: none; grid-auto-flow: row; }
}

/* Contact page */
.dpn-contact-form .wpforms-field { margin: 0 0 15px; }
.dpn-contact-form .wpforms-field-label { display: block; padding: 0 0 0 30px; margin: 0; color: var(--dpn-grey); font-size: inherit; font-weight: 400; }
.dpn-contact-form .wpforms-required-label { color: var(--dpn-grey); }
.dpn-contact-form .wpforms-field input[type="text"], .dpn-contact-form .wpforms-field input[type="email"],
.dpn-contact-form .wpforms-field select, .dpn-contact-form .wpforms-field textarea {
	display: block; width: 100%; max-width: none; box-sizing: border-box; padding: 6px 12px; border: 1px solid var(--dpn-border);
	background: var(--dpn-light); border-radius: 0; font: inherit; font-size: 14px;
}
.dpn-contact-form .wpforms-field input[type="text"], .dpn-contact-form .wpforms-field input[type="email"], .dpn-contact-form .wpforms-field select { height: 34px; }
.dpn-contact-form .wpforms-field textarea { height: auto; resize: vertical; }
.dpn-contact-form .wpforms-field-checkbox ul { list-style: none; margin: 0; padding: 0; }
.dpn-contact-form .wpforms-field-checkbox ul li { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; }
.dpn-contact-form .wpforms-field-checkbox ul li input { margin: 0; flex: 0 0 auto; }
.dpn-contact-form .wpforms-field-checkbox ul li label { display: block; padding: 0; margin: 0; font-size: 14px; font-weight: 400; color: var(--dpn-grey); }
.dpn-contact-form .wpforms-field-checkbox ul li a { color: var(--dpn-gold); }
.dpn-contact-form .wpforms-submit-container { margin: 0; padding: 0; }
.dpn-contact-form .wpforms-submit {
	display: inline-block; background: var(--dpn-gold); color: #fff; text-decoration: none; font-weight: 500; font-style: italic;
	font-size: 16px; line-height: 1.5; padding: 8px 10px; border: 0; border-radius: 0; cursor: pointer; text-align: center;
}
.dpn-contact-form .wpforms-submit:hover, .dpn-contact-form .wpforms-submit:focus { background: var(--dpn-gold-dark); }
