/* === Viewport Full Width Section === */
.feature-section {
 position: relative;
 left: 50%;
 right: 50%;
 margin-left: -50vw;
 margin-right: -50vw;
 width: 100vw;
 background-color: #e6e6e6;
 box-sizing: border-box;
}
 
/* Grid */
.feature-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 width: 100%;
}
 
/* Cards */
.feature-card {
 background-color: #dcdcdc;
 padding: 36px 32px;
 display: flex;
 align-items: flex-start;
 gap: 20px;
 border-right: 1px solid #ffffff;
 border-bottom: 1px solid #ffffff;
 box-sizing: border-box;
}
 
.feature-card:nth-child(3n) {
 border-right: none;
}
 
.feature-card:nth-last-child(-n+3) {
 border-bottom: none;
}
 
/* Icon */
.feature-icon {
 width: 80px;
 flex-shrink: 0;
}
 
.feature-icon img {
 width: 100%;
 height: auto;
 display: block;
}
 
/* Text */
.feature-content h3 {
 font-size: 18px;
 font-weight: 600;
 margin: 0 0 10px 0;
}
 
.feature-content p {
 font-size: 15px;
 line-height: 1.6;
 margin: 0 0 8px 0;
}
 
/* CTA */
.feature-card.cta {
 justify-content: center;
}
 
.feature-card.cta .feature-content {
 text-align: center;
 width: 100%;
}
 
.feature-card.cta a {
 display: inline-block;
 margin-top: 16px;
 padding: 14px 32px;
 background-color: #000;
 color: #fff;
 text-decoration: none;
 font-size: 15px;
}
 
.feature-card.cta a:hover {
 background-color: #333;
}
 
/* Responsive */
@media (max-width: 1024px) {
 .feature-grid {
   grid-template-columns: repeat(2, 1fr);
 }
 
 .feature-card:nth-child(3n) {
   border-right: 1px solid #fff;
 }
 
 .feature-card:nth-child(2n) {
   border-right: none;
 }
 
 .feature-card:nth-last-child(-n+3) {
   border-bottom: 1px solid #fff;
 }
 
 .feature-card:nth-last-child(-n+2) {
   border-bottom: none;
 }
}
 
@media (max-width: 640px) {
 .feature-grid {
   grid-template-columns: 1fr;
 }
 
 .feature-card {
   border-right: none;
 }
 
 .feature-card:not(:last-child) {
   border-bottom: 1px solid #fff;
 }
}
