/* Contact page + shared contact form styles (loaded site-wide; the form is also used in the footer) */
:root{--dbf-orange:#f47b20;--dbf-dark:#161616;--dbf-gray:#6b6b6b;--dbf-line:#e6e6e6}
.dbf-contact-wrap{max-width:1140px;margin:0 auto;padding:40px 20px 80px}

.dbf-contact-header{text-align:center;margin-bottom:48px}
.dbf-contact-header .entry-title{color:var(--dbf-orange);font-size:clamp(28px,4vw,34px);font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin:0 0 14px}
.dbf-contact-intro{max-width:760px;margin:0 auto;color:var(--dbf-gray);font-size:16px}
.dbf-contact-intro p{margin:0}

.dbf-contact-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:32px;align-items:stretch}

/* Info card */
.dbf-contact-info{background:var(--dbf-dark);color:#fff;border-radius:8px;padding:36px 32px}
.dbf-contact-info h2{color:var(--dbf-orange);font-size:24px;font-weight:700;text-transform:uppercase;margin:0 0 24px}
.dbf-contact-info ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:22px}
.dbf-contact-info li{display:flex;gap:14px;align-items:flex-start;line-height:1.5}
.dbf-contact-info svg{flex:0 0 22px;width:22px;height:22px;fill:var(--dbf-orange);margin-top:2px}
.dbf-contact-info a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3)}
.dbf-contact-info a:hover{color:var(--dbf-orange);border-color:var(--dbf-orange)}
.dbf-contact-social{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.dbf-contact-social a{border:1px solid var(--dbf-orange);color:var(--dbf-orange);padding:8px 18px;border-radius:6px;font-weight:600;font-size:14px}
.dbf-contact-social a:hover{background:var(--dbf-orange);color:#fff}

/* Form card */
.dbf-contact-form-card{background:#fff;border:1px solid var(--dbf-line);border-radius:8px;padding:36px 32px}
.dbf-contact-form-card form p{margin:0 0 18px}
.dbf-contact-form-card label{display:block;font-weight:600;font-size:14px;color:#232323;margin-bottom:6px}
.dbf-contact-form-card label span{color:var(--dbf-orange)}
.dbf-contact-form-card input[type=text],
.dbf-contact-form-card input[type=email],
.dbf-contact-form-card textarea{
	width:100%;box-sizing:border-box;padding:12px 14px;font:inherit;color:#232323;
	background:#fafafa;border:1px solid #d6d6d6;border-radius:6px;transition:border-color .2s,box-shadow .2s;
}
.dbf-contact-form-card input:focus,
.dbf-contact-form-card textarea:focus{outline:0;border-color:var(--dbf-orange);box-shadow:0 0 0 3px rgba(244,123,32,.18);background:#fff}
.dbf-contact-form-card textarea{resize:vertical;min-height:140px}
.dbf-contact-submit{margin-bottom:0!important}
.dbf-contact-form-card button[type=submit]{
	background:var(--dbf-orange);color:#fff;border:0;border-radius:6px;padding:13px 32px;
	font:inherit;font-weight:700;cursor:pointer;transition:background .2s,transform .2s;
}
.dbf-contact-form-card button[type=submit]:hover{background:#d96a14;transform:translateY(-1px)}

/* Honeypot: off-screen, not display:none (bots skip display:none less often) */
.dbf-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}

.dbf-contact-notice{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:15px}
.dbf-contact-notice.is-ok{background:#e8f6ec;color:#17692f;border:1px solid #b9e2c4}
.dbf-contact-notice.is-err{background:#fdecec;color:#a12626;border:1px solid #f4bcbc}

/* Map */
.dbf-contact-map{margin-top:40px;border-radius:8px;overflow:hidden;border:1px solid var(--dbf-line)}
.dbf-contact-map iframe{display:block;width:100%;height:380px;border:0}

@media (max-width:860px){
	.dbf-contact-grid{grid-template-columns:1fr}
	.dbf-contact-wrap{padding:24px 14px 48px}
	.dbf-contact-info,.dbf-contact-form-card{padding:26px 20px}
	.dbf-contact-map iframe{height:300px}
}
