.page-header-zone {
  padding: 87px 0 64px;
  background: linear-gradient(135deg, #f5f7fa 0%, #e8ecf1 100%);
  border-bottom    :  1px solid #e0e4e9;
}

.header-content-block {

  max-width  :       840px;
       margin   :    0 auto;
     text-align    :center;

	}

.breadcrumb-trail {
  display:       inline-block;
   font-size: 14px;
   color: #7f8c9a;
    margin-bottom: 17px;
    font-weight: 500;
}

.page-title-main
	{
    font-size: 48px;
  font-weight     :  800;
   color :#1a252f;
  margin-bottom: 22px;
   line-height  : 1.19;
}

.page-intro-text  {
  font-size: 18px;
	line-height: 1.71;
   color :    #5a6c7d;
}

.contact-main-area {
   padding     :  97px 0;
}

.contact-layout-split {

    display :grid;
    grid-template-columns: 1.4fr 1fr;
  gap: 64px;
   align-items: start;}

.contact-form-section {


  background: #ffffff;
   padding: 44px 38px;
  border-radius: 12px;
  border: 1px solid #e8ecf1;
  box-shadow: 0 4px 23px rgba(0,0,0,0.07);


}

.form-intro-block {
    margin-bottom: 34px;
    padding-bottom: 29px;
    border-bottom: 2px solid #e8ecf1;
}

.form-section-heading {
     font-size :    32px;
    font-weight    :  700;
   color: #1a252f;
    margin-bottom  :12px;}

.form-intro-text {
   font-size :       16px;
       color: #5a6c7d;
        line-height: 1.64;}

.inquiry-form-wm   {
    display: flex;

	    flex-direction: column;

	  gap: 22px;
}

.form-row-group  
  {
  display: grid;
   grid-template-columns: 1fr 1fr;
    gap: 19px;
}

.form-field-unit {
  display: flex;
  flex-direction: column;
    gap   :  8px;
}

.field-label-text

{
  font-size     :       15px;
    font-weight   :        600;
    color   :  #2c3e50;
}

.required-mark {
   color     :       #e74c3c;
}

.field-input-control,
.field-select-control,
.field-textarea-control {
  padding: 14px 17px;
       border: 1px solid #e8ecf1;
      -webkit-border-radius: 7px;
                  border-radius: 7px;
      font-size    :   15px;
        color: #2c3e50;
      font-family: inherit;
      transition: all 0.28s ease;
       background: #ffffff;
}

.field-input-control:focus,
.field-select-control:focus,
.field-textarea-control:focus {
    outline: none;
	border-color: #3498db;
  box-shadow: 0 0 0 3px rgba(52,152,219,0.11);
}

.field-input-control.error-state,
.field-select-control.error-state,
.field-textarea-control.error-state {
   border-color: #e74c3c;
}

.field-textarea-control {
     resize: vertical;
    min-height: 130px;
}

.error-message-txt {
   font-size   :    13px;
    color   :#e74c3c;
	display: none;
}

.error-message-txt.show-error {
    display: block;
}

.consent-agreement-row {
  display :        flex;
   align-items: flex-start;
	gap: 11px;
   padding: 17px;
   background: #f8f9fb;
   border-radius   :      7px;
	}

.consent-agreement-row input[type="checkbox"] {
    margin-top     :3px;
          flex-shrink: 0;
}

.consent-label-text {
   font-size: 14px;
    color: #5a6c7d;
	line-height  : 1.57;
}

.consent-label-text a {
       color     :      #3498db;

    text-decoration: underline;
}

.form-submit-action {
  width: 100%;
                    padding: 16px 29px;
    background: #3498db;
    color :     #ffffff;
  font-size: 17px;
    font-weight: 600;
  border-radius: 7px;
   border :    none;
    cursor: pointer;
    transition:       all 0.28s ease;
	 display: flex;
   align-items: center;
   justify-content: center;
   gap: 11px;
}

.form-submit-action:hover {
                    background: #2980b9;
  transform: translateY(-2px);
  box-shadow: 0 8px 23px rgba(52,152,219,0.31); 

}

.form-submit-action:disabled {
  background: #bdc3c7;
  cursor: not-allowed;
  transform    :    none;
}

.btn-icon-arrow {
  stroke-width: 2;
    transition: transform 0.28s ease;
    width: 19px;
    fill: none;
      height   : 19px;
                    stroke: #ffffff;
}


.form-submit-action:hover .btn-icon-arrow {
  transform: translateX(4px);
	
}

.form-privacy-note {
  font-size: 13px;
   color: #7f8c9a;
	text-align: center;
          line-height  :     1.54;
  margin    :       0;
}

.contact-info-section {
  display: flex;
	 flex-direction: column;
    gap: 24px;
}

.info-card-block {
	 padding: 29px 24px;
    background: #ffffff;
   border    :      1px solid #e8ecf1;
    border-radius: 11px;
    -webkit-border-radius: 11px;
	transition    :        all 0.28s ease;


}

.info-card-block:hover

{
  box-shadow: 0 8px 27px rgba(0,0,0,0.09);
  transform: translateY(-2px);
}



.info-card-block.highlight-card {
	  background: linear-gradient(135deg, #e8f5e9 0%, #f1f8f4 100%);
    border-color: #27ae60;

}

.info-icon-badge {
    width: 54px;
  height: 54px;
  background: linear-gradient(135deg, #e3f2fd 0%, #e8f5e9 100%);
  border-radius: 50%;
   display: flex;
    align-items: center;
    justify-content: center;
   margin-bottom: 17px;
}

.info-badge-icon {
	    width: 26px;
  height: 26px;
    stroke: #1976d2;
    fill :    none;
    stroke-width   :      2;}

.info-card-title  
  {
    font-size   :        19px;
	font-weight: 700;
 color: #1a252f;
   margin-bottom: 11px;
}

.info-card-text {
    font-size: 16px;
   line-height: 1.64;
         color     :   #2c3e50;
    margin-bottom: 9px;


}

.info-card-text a {
	  color: #3498db;
   transition: color 0.28s ease;


}

.info-card-text a:hover {

		color: #2980b9;}

.info-card-note     {
        font-size: 14px;

    color: #7f8c9a;

         line-height: 1.54;

    margin: 0;
}

.expectation-list-wm {
   list-style   :  none;
  padding     :   0;
}

.expectation-list-wm li {
   font-size: 15px;
    color: #2c3e50;
  padding-left: 24px;
   margin-bottom    :      9px;
    position  :   relative;
	line-height: 1.54;

}

.expectation-list-wm li::before {
                    font-size: 17px;
     position: absolute;
   font-weight: 700;
   color: #27ae60;
  content: '✓';
     left: 0;
}

.success-modal-overlay {
      position  :      fixed;
    top: 0;
	left   :        0;
    right   :   0;
  bottom: 0;
  background: rgba(0,0,0,0.67);
	display: none;
  align-items: center;
   justify-content: center;
                    z-index     :  9999;
    padding   :  27px;
	}

.success-modal-overlay.modal-active {
  display: flex;
}

.modal-success-box {
    max-width     :      540px;
	text-align: center;
    animation: modalSlideIn 0.34s ease;
    padding: 44px 38px;
   border-radius: 12px;
    width: 100%;
  background: #ffffff;
}@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: scale(0.94) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}.modal-icon-success  
  {
   width: 84px;
		height: 84px;
	  background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
	               border-radius: 50%;
	   display: flex;
	       align-items: center;
	   justify-content: center;
	    margin: 0 auto 24px;

}

.success-check-icon


{

	width: 44px;
  height: 44px;
	stroke: #27ae60;
   fill: none;
    stroke-width: 3;


}

.modal-success-title {


   font-size: 28px;
   font-weight: 700;
  color: #1a252f;
   margin-bottom: 14px;}

.modal-success-text {
    font-size: 17px;
    line-height: 1.71;
    color: #5a6c7d;
    margin-bottom: 29px;
}

.modal-close-action {
  padding     : 14px 38px;
   background: #27ae60;
  color     :       #ffffff;
   font-size: 16px;
	font-weight: 600;
	border-radius: 7px;
         border: none;
   cursor :  pointer;
    transition: all 0.28s ease;
}  

.modal-close-action:hover {
   background     :#229954;

  transform: translateY(-2px);

  box-shadow: 0 8px 23px rgba(39,174,96,0.31);
}@media (max-width: 992px) {
    .contact-layout-split {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .form-section-heading {
        font-size: 28px;
    }

    .form-row-group {
        grid-template-columns: 1fr;
        gap: 22px;
    }
}

@media (max-width: 768px) {
    .page-header-zone {
        padding: 64px 0 44px;
    }

    .page-title-main {
        font-size: 32px;
    }

    .contact-form-section {
        padding: 34px 24px;
    }

    .form-section-heading {
        font-size: 24px;
    }

    .info-card-block {
        padding: 24px 19px;
    }

    .modal-success-box {
        padding: 34px 24px;
    }

    .modal-success-title {
        font-size: 24px;
    }
}

@media (max-width: 480px) {
    .page-title-main {
        font-size: 26px;
    }

    .form-section-heading {
        font-size: 22px;
    }

    .form-submit-action {
        padding: 14px 24px;
    }
}