.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;
}

.resources-library-main {
  padding: 97px 0;
} 

.resource-category-section {
 margin-bottom: 87px;
}

.resource-category-section:last-child {
    margin-bottom: 0;
}

.category-header-block {


   display: flex;
    align-items: center;
        gap: 27px;
	margin-bottom: 44px;
  padding-bottom: 24px;
  border-bottom: 2px solid #e8ecf1;


}

.category-icon-display{
	       width: 74px;
  height: 74px;
  background: linear-gradient(135deg, #e3f2fd 0%, #e8f5e9 100%);
    border-radius: 50%;
   display: flex;
   align-items  :        center;
  justify-content: center;
    flex-shrink: 0;

}

.category-icon-svg {
       height: 38px;
    fill: none;
   width: 38px;
  stroke-width:       1.5;
   stroke: #1976d2;


}

.category-title-area {
	 flex: 1;
}

.category-heading-txt
{
   font-size   :   32px;
  font-weight: 700;
   color: #1a252f;
    margin-bottom    :9px;
}

.category-desc-line {
  font-size: 17px;
          color: #5a6c7d;
   line-height: 1.64; 

}

.resources-grid-layout {
	  display :      grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
   gap: 29px;
	}

.resource-item-card {
    background: #ffffff; 
   padding: 34px 29px; 
    border-radius: 11px; 
    border: 1px solid #e8ecf1; 
   transition: all 0.31s ease; 
      display: flex; 
	flex-direction: column;
}

.resource-item-card:hover {
  box-shadow: 0 12px 43px rgba(0,0,0,0.09);
  transform: translateY(-4px);
  border-color :        #3498db;
}


.resource-type-badge {
	    display: inline-flex;
    align-items    :   center;
   gap   :      7px;
    padding: 6px 13px;
    border-radius: 17px;
   font-size: 12px;
  font-weight: 600;
      text-transform: uppercase;
   letter-spacing     :       0.7px;
   margin-bottom: 19px;
  align-self: flex-start;
	
     }

.checklist-badge {
    background: #e8f5e9;
   color: #2e7d32;
}



.template-badge {
    background: #e3f2fd;
  color: #1976d2;
}

.calculator-badge {
  background: #fff3e0;
   color     :#f57c00;
}

.guide-badge {
  background: #f3e5f5;
    color: #7b1fa2;
}

.badge-icon-small {
     width: 14px;
    height: 14px;
   stroke: currentColor;
    fill    :      none;
  stroke-width: 2;
}

.resource-name-heading {
    font-size: 22px;
    font-weight: 700;
  color: #1a252f;
   margin-bottom: 14px;
   line-height: 1.31;
}

.resource-description-txt {
	 font-size: 15px;
  line-height: 1.67;
    color: #5a6c7d;
  margin-bottom: 19px;
	 flex-grow: 1;
}

.resource-features-list {
  list-style: none;
  margin-bottom: 24px;
    padding-left: 0;
}

.resource-features-list li {
   font-size: 14px;
  color: #5a6c7d;
   padding-left: 22px;
  margin-bottom: 8px;
  position :      relative;
}

.resource-features-list li::before {
    color: #3498db;
   position: absolute;
  font-size: 17px;
   left: 7px;
  content: '•';
   line-height :       1;


}

.resource-download-trigger {
               width: 100%;
  padding: 13px 24px;
   background: #3498db;
   color  :  #ffffff;
  font-size: 15px;
  font-weight: 600;
  border-radius: 7px;
    border: none;
   cursor: pointer;
   transition: all 0.28s ease;
}

.resource-download-trigger:hover {
    background    :#2980b9;
  transform: translateY(-2px);
  box-shadow: 0 8px 23px rgba(52,152,219,0.31);

}

.download-modal-overlay {
   position     :    fixed;
    top: 0;
    left: 0;
    right: 0;
   bottom: 0;
  background: rgba(0,0,0,0.64);
	display: none;
  align-items: center;
    justify-content: center;
	z-index: 9999;
   padding: 27px;
}

.download-modal-overlay.modal-active  {
  display: flex;

}

.modal-content-box {

	         background: #ffffff;
   border-radius :   12px;
  max-width: 540px;
    width: 100%;
   padding: 44px 38px;
   position: relative;
 animation:    modalSlideIn 0.31s ease;
     }@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}.modal-close-btn {
  position: absolute;
      top: 19px;
   right: 19px;
	 width: 34px;
   height: 34px;
  background  :      #f8f9fb;
    border-radius: 50%;
                    display: flex;
      align-items: center;
    justify-content   :  center;
   cursor    :  pointer;
    transition: all 0.28s ease;
}

.modal-close-btn:hover {
      background   :     #e8ecf1;
  transform: rotate(90deg);

}

.close-icon-svg {
	width: 18px;
   stroke-width: 2;
	 height: 18px;
  stroke :#5a6c7d;
	fill: none;
}

.modal-header-section {
    text-align :center;
       margin-bottom: 34px;
}

.modal-icon-circle {
	width: 74px;
  height:    74px;
  background: linear-gradient(135deg, #e3f2fd 0%, #e8f5e9 100%);
  border-radius: 50%;
        display  :       flex;
   align-items: center;
  justify-content: center;
  margin: 0 auto 19px;
}

.modal-header-icon {
    width     :   38px;
    height: 38px;
    stroke     :#1976d2;
   fill: none;
		 stroke-width: 1.5;
}

.modal-title-txt
	{
	  font-size: 28px;
	font-weight: 700;
    color :   #1a252f;
			margin-bottom: 9px;


}

.modal-subtitle-txt {
       font-size: 16px;
    color: #5a6c7d;
   line-height: 1.64;
}

.download-form-wm {
    display: flex;
	flex-direction: column;
  gap :19px;
}

.form-field-group  
  {
  display: flex;
   flex-direction: column;
	gap: 8px;
}

.field-label-txt {
    font-size  :   14px;
   color: #2c3e50;
    font-weight: 600;
}  

.field-input-wm  {


  padding:    13px 17px;
	 border: 1px solid #e8ecf1;
  border-radius: 7px;
 font-size: 15px;
  color: #2c3e50;
  transition: all 0.28s ease;
}

.field-input-wm:focus {
    outline: none;
    border-color: #3498db;
  box-shadow: 0 0 0 3px rgba(52,152,219,0.11);
}

.consent-checkbox-row {
    display: flex;
  align-items: flex-start;
  gap: 11px;
    padding: 14px;
   background: #f8f9fb;
  border-radius: 7px;
}

.consent-checkbox-row input[type="checkbox"] {
    margin-top: 3px;

	   flex-shrink: 0;
}

.consent-label-txt   {
  font-size :    13px;
   color: #5a6c7d;
    line-height: 1.54;
}

.form-submit-btn {
   width: 100%;
  padding: 15px 24px;
    background: #27ae60;
   color: #ffffff;
  font-size: 16px;
   font-weight: 600;
  border-radius: 7px;
	border: none;
    cursor   :        pointer;
	 transition: all 0.28s ease;


}

.form-submit-btn:hover {
    background: #229954;
  transform: translateY(-2px);
  box-shadow: 0 8px 23px rgba(39,174,96,0.31);
}

.privacy-note-txt {
    margin: 0;
         font-size: 12px;
  text-align: center;
        color: #7f8c9a;
    line-height: 1.54;


}



.privacy-note-txt a {
   color: #3498db;
    text-decoration:       underline;
}

.cta-resources-variant

{

  background: linear-gradient(135deg, #8e44ad 0%, #9b59b6 100%);
}@media (max-width: 992px) {
    .category-header-block {
        flex-direction: column;
        align-items: flex-start;
        gap: 19px;
    }

    .category-heading-txt {
        font-size: 28px;
    }

    .resources-grid-layout {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}@media (max-width: 768px) {
    .page-header-zone {
        padding: 64px 0 44px;
    }

    .page-title-main {
        font-size: 32px;
    }

    .category-heading-txt {
        font-size: 24px;
    }

    .resources-grid-layout {
        grid-template-columns: 1fr;
    }

    .modal-content-box {
        padding: 34px 24px;
    }
}

@media (max-width: 480px) {
    .page-title-main {
        font-size: 26px;
    }

    .category-heading-txt {
        font-size: 22px;
    }

    .modal-title-txt {
        font-size: 24px;
    }
}