/* --------------------------------------------------
   Contact Item / Contact Info
   -------------------------------------------------- */
.contact-item a,
.contact-item--address h2,
.contact-item--address p,
.contact-item--address address {
	font-family:var(--font-family-sans-bold);
	font-style:normal;
	font-size:var(--fs-187);
	color:var(--color-primary);}
.contact-item--address > div {margin-top:50px;}	
.contact-item--address h2,
.contact-item--address p,
.contact-item--address address {
	line-height:1.5em}	
.contact-item---reginfo {margin-top:20px;}	
.contact-item__icon{
	max-width:85px;
	width:100%;
	text-align:center;}
.contact-item__icon img{display: inline;}
.contact-item__icon .icon-phone img{width:45px;}
.contact-item__icon .icon-envelope img{width:100%;}
.contact-item--email{margin:50px 0 50px 0;}

/* --------------------------------------------------
   Contact Form 7
   -------------------------------------------------- */
.contact-content--cf7,
.cf7-text-field *,
.cf7-textarea-field *,
.gdpr-acceptance * {width: 100%;}
.contact-content--cf7 {max-width: 715px;}

/* ─── Shared input/textarea styling ──────────────── */
.cf7-text-field input,
.cf7-text-field input::placeholder,
.cf7-textarea-field textarea,
.cf7-textarea-field textarea::placeholder {
  color: var(--color-primary);
  font-family: var(--font-family-sans-regular);}

.cf7-text-field input,
.cf7-textarea-field textarea {
  font-size: var(--fs-112);
  border-bottom: 1px solid var(--color-primary);}

.cf7-text-field input {line-height: 2.5em;}
.cf7-textarea-field textarea {
  height: 135px;
  line-height: 1.25em;
  margin-top: 25px;}

/* ─── GDPR Checkbox ──────────────────────────────── */
.contact-content--cf7 .gdpr-acceptance {margin-top: 20px;}
.contact-content--cf7 .gdpr-acceptance input[type="checkbox"] {
  appearance: none;
  width: 25px;
  height: 25px;
  border: 1px solid #2B6038;
  border-radius: 3px;
  position: relative;
  cursor: pointer;}
.contact-content--cf7 .gdpr-acceptance input[type="checkbox"]:checked {background-color: #2B6038;}
.contact-content--cf7 .gdpr-acceptance input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 8px;
  width: 5px;
  height: 15px;
  border: solid #fff;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);}

.gdpr-acceptance .wpcf7-list-item {margin: 0;}
.gdpr-acceptance .wpcf7-list-item label {display: flex;}
.gdpr-acceptance .wpcf7-list-item-label {
  margin-left: 15px;
  line-height: 1.5em;
  font-size: var(--fs-112);
  color: var(--color-primary);
  font-family: var(--font-family-sans-regular);}

/* ─── Validation Tip ─────────────────────────────── */
.wpcf7-not-valid-tip {margin-top: 5px;}

/* ─── Submit Button ──────────────────────────────── */
.message-button-send {
  margin-top: 50px;
  text-align: right;}
.message-button-send input {
  height: 60px;
  max-width: 225px;
  width: 100%;
  border: 1px solid var(--color-accent);
  font-size: var(--fs-112);
  font-family: var(--font-family-sans-regular);
  color: var(--color-accent);}
.wpcf7-spinner {
  width: 0;
  margin: 0;}
  
@media (min-width: 1025px) and (max-width: 1199px) {	
	.contact-section .content-wrapper > div {flex-wrap:nowrap;}
	.contact-info{min-width: 360px;}
	.contact-info > div {gap:10px;}	
	.contact-item__icon {max-width: 40px;}
	.contact-item__icon.icon-phone img{width: 25px;}		
}
@media (min-width: 800px) and (max-width: 1024px) {	
	.contact-section .content-wrapper > div {flex-wrap:nowrap;}
	.contact-info{min-width: 360px;}
	.contact-info > div {gap:10px;}	
	.contact-item__icon {max-width: 40px;}
	.contact-item__icon.icon-phone img{width: 25px;}	
	.contact-item__icon.icon-location img{width: 35px;}			
	.contact-item a{font-size: var(--fs-187);}
	.message-button-send input {
		width:100%;
		max-width:100%;}
	.contact-section .content-wrapper > div{align-items: flex-start;}
	.cf7-text-field > p{
		width: 100%;
		flex-basis: 100%;}
}

 @media (max-width: 1024px) {
	.page-template-template-contact .contact-item--address > div {margin: 0 0 50px 0;}	 
}	
 @media (max-width: 799px) {	
	.page-template-template-contact .contact-section{flex-wrap: wrap;}
}
 
 @media (max-width: 599px) {	
	.contact-item a,
	.contact-item--address h2,
	.contact-item--address p,
	.contact-item--address address {font-size:var(--fs-150); }
	.contact-section .content-wrapper > div {align-items:flex-start;}
	.message-button-send input {
		width:100%;
		max-width:100%;}
		
	.contact-info > div {gap:10px;}	
	.contact-item__icon {max-width: 40px;}
	.contact-item__icon.icon-phone img{width: 25px;}		
	
 }