/* Site CSS */
/************************************************ ================================================= NEMCC DESIGN SYSTEM Scoped Foundation CSS ================================================= ************************************************/
/************************************************ GLOBAL WRAPPER ************************************************/
 .nemcc * {
     box-sizing: border-box;
}
/************************************************ SECTION SYSTEM ************************************************/
 .nemcc section {
     margin-top: 2rem;
}
 .nemcc section:first-child {
     margin-top: 0;
}
 .nemcc .section-block {
     margin: 0 0 1.8rem 0;
}
 .nemcc .section-block-featured .section-heading {
     font-size: clamp(2.2rem, 4vw, 3rem);
     line-height: 1.02;
     margin-bottom: 1.25rem;
     position: relative;
}
 .nemcc .section-block-featured .section-heading::after {
     content: "";
     display: block;
     width: 4rem;
     height: 6px;
     border-radius: 999px;
     background: #d9c78f;
     margin-top: 1.4rem;
}
/************* SECTION HEADER *************/
 .nemcc .section-header {
     max-width: 100%;
     margin-bottom: 2rem;
}
/************* EYEBROW *************/
 .nemcc .section-eyebrow {
     display: inline-block;
     font-size: .8rem;
     font-weight: 800;
     letter-spacing: .08em;
     text-transform: uppercase;
     color: #8b5a12;
     margin-bottom: .5rem;
}
/************* SECTION HEADING *************/
 .nemcc .section-heading {
     font-size: clamp(1.65rem, 2vw, 2rem);
     line-height: 1.08;
     font-weight: 800;
     color: #111;
     margin: 0 0 .75rem;
}
 .nemcc .section-heading:after {
     content: none;
}
/************* INTRO TEXT *************/
 .nemcc .section-intro {
    /*font-size: 1.05rem;
     line-height: 1.8;
     color: #555;
     */
     margin: 0;
     max-width: 100%;
}
/************************************************ BUTTON SYSTEM ************************************************/
/************* BASE BUTTON *************/
 .nemcc .btn, .nemcc .btn:visited {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: .7rem;
     text-decoration: none !important;
     border-radius: 1rem;
     font-weight: 700;
     transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
     cursor: pointer;
}
 .nemcc .btn:hover {
     transform: translateY(-2px);
}
/************* PRIMARY BUTTON *************/
 .nemcc .btn-primary, .nemcc .btn-primary:visited {
     background: #8b5a12;
     color: #fff !important;
     padding: .95rem 1.35rem;
     box-shadow: 0 4px 14px rgba(139,90,18,.18);
}
 .nemcc .btn-primary:hover {
     background: #6f4710;
     color: #fff !important;
     box-shadow: 0 10px 24px rgba(0,0,0,.08);
}
/************* DARK BUTTON *************/
 .nemcc .btn-dark, .nemcc .btn-dark:visited {
     background: #111;
     color: #fff !important;
     padding: .95rem 1.15rem;
}
 .nemcc .btn-dark:hover {
     background: #1c1c1c;
     color: #fff !important;
}
/************* OUTLINE BUTTON *************/
 .nemcc .btn-outline, .nemcc .btn-outline:visited {
     background: #fff;
     border: 1px solid #ddd4c1;
     color: #222 !important;
     padding: .95rem 1.2rem;
}
 .nemcc .btn-outline:hover {
     border-color: #cbb677;
     box-shadow: 0 8px 24px rgba(0,0,0,.05);
}
/************* BUTTON ICONS *************/
 .nemcc .btn i {
     font-size: .9rem;
}
/************************************************ ICON SYSTEM ************************************************/
/************* ICON CIRCLE *************/
 .nemcc .icon-circle {
     width: 64px;
     height: 64px;
     min-width: 64px;
     border-radius: 50%;
     background: rgba(203,182,119,.14);
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
 .nemcc .icon-circle i {
     color: #8b5a12;
     font-size: 1.4rem;
}
/************* ICON SQUARE *************/
 .nemcc .icon-square {
     width: 58px;
     height: 58px;
     min-width: 58px;
     border-radius: 1rem;
     background: linear-gradient( 180deg, rgba(203,182,119,.18) 0%, rgba(203,182,119,.08) 100% );
     display: flex;
     align-items: center;
     justify-content: center;
}
 .nemcc .icon-square i {
     color: #8b5a12;
     font-size: 1.25rem;
     transform: translateX(2px);
}
/************* PANEL ICON *************/
 .nemcc .panel-icon {
     width: 74px;
     height: 74px;
     border-radius: 1.4rem;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
 .nemcc .panel-icon i {
     font-size: 1.9rem;
     color: #fff;
}
/************************************************ CARD SYSTEM ************************************************/
 .nemcc .card-grid {
     display: grid;
     gap: 1.25rem;
     margin:0;
     padding:0;
     margin-top:1rem;
}
/************* 2 COLUMN GRID *************/
 .nemcc .card-grid-2 {
     grid-template-columns: repeat(2, minmax(0, 1fr));
}
/************* 3 COLUMN GRID *************/
 .nemcc .card-grid-3 {
     grid-template-columns: repeat(3, minmax(0, 1fr));
}
/************* STANDARD CARD *************/
 .nemcc .info-card {
     display: flex;
     align-items: flex-start;
     gap: 1.25rem;
     background: linear-gradient( 180deg, #ffffff 0%, #faf7f1 100% );
     border: 1px solid #e8dfcf;
     border-radius: 1.25rem;
     padding: 1.5rem;
     transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
 .nemcc .info-card:hover {
     border-color: rgba(139,90,18,.25);
     box-shadow: 0 14px 32px rgba(0,0,0,.06);
}
/************* CARD CONTENT *************/
 .nemcc .info-card-content {
     flex: 1;
}
 .nemcc .info-card-content h3 {
     font-size: 1.08rem;
     line-height: 1.3;
     font-weight: 800;
     color: #111;
     margin: 0 0 .55rem;
}
 .nemcc .info-card-content p {
     margin: 0;
     font-size: .96rem;
     line-height: 1.7;
     color: #666;
}
/************************************************ STEP GRID ************************************************/
 .nemcc .step-grid {
     display: grid;
     grid-template-columns: repeat(3, minmax(0, 1fr));
     gap: 1.5rem;
}
/************************************************ STEP CARD ************************************************/
 .nemcc .step-card {
     background: #ffffff;
     border: 1px solid #e7dfcf;
     border-radius: 1.5rem;
     padding: 2rem 1.75rem;
     text-align: center;
     transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
 .nemcc .step-card:hover {
     transform: translateY(-2px);
     border-color: rgba(203,182,119,.45);
     box-shadow: 0 10px 24px rgba(0,0,0,.05);
}
/************************************************ TOP AREA ************************************************/
 .nemcc .step-card-top {
     display: flex;
     flex-direction: column;
     align-items: center;
     margin-bottom: 1.5rem;
}
/************************************************ STEP LABEL ************************************************/
 .nemcc .step-label {
     font-size: .8rem;
     font-weight: 800;
     letter-spacing: .08em;
     text-transform: uppercase;
     color: #8b5a12;
     margin-bottom: 1rem;
}
/************************************************ ICON ************************************************/
 .nemcc .step-icon {
     width: 72px;
     height: 72px;
     border-radius: 50%;
     background: linear-gradient( 180deg, rgba(203,182,119,.18) 0%, rgba(203,182,119,.08) 100% );
     display: flex;
     align-items: center;
     justify-content: center;
}
 .nemcc .step-icon i {
     font-size: 1.9rem;
     color: #c4ab63;
     transform: translateX(3px);
}
/************************************************ CONTENT ************************************************/
 .nemcc .step-card-content h3 {
     font-size: 1.45rem;
     line-height: 1.2;
     font-weight: 800;
     color: #111;
     margin: 0 0 .85rem;
}
 .nemcc .step-card-content p {
     font-size: 1.08rem;
     line-height: 1.9;
     color: #555;
     margin: 0;
}
/************************************************ TABLET ************************************************/
 @media screen and (max-width: 1100px) {
     .nemcc .step-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .step-grid {
         grid-template-columns: 1fr;
    }
     .nemcc .step-card {
         padding: 1.75rem 1.5rem;
    }
     .nemcc .step-card-content h3 {
         font-size: 1.3rem;
    }
     .nemcc .step-card-content p {
         font-size: 1rem;
         line-height: 1.75;
    }
}
/************************************************ NOTICE / ALERT PANELS ************************************************/
/************************************************ NOTICE / ALERT PANELS ************************************************/
 .nemcc .notice-panel, .nemcc .alert-panel {
     display: flex;
     align-items: flex-start;
     gap: 1.25rem;
     padding: 1.5rem;
     border-radius: 1.25rem;
     margin: 1.75rem 0;
}
/************************************************ NOTICE PANEL ************************************************/
 .nemcc .notice-panel {
     background: linear-gradient( 135deg, #f4f8ff 0%, #fafcff 100% );
     border: 1px solid rgba(42,101,181,.14);
}
/************************************************ ALERT PANEL ************************************************/
 .nemcc .alert-panel {
     background: linear-gradient( 135deg, #fff8f8 0%, #fffdfd 100% );
     border: 1px solid rgba(194,39,39,.14);
}
/************************************************ PANEL ICON ************************************************/
 .nemcc .panel-icon {
     width: 60px;
     height: 60px;
     min-width: 60px;
     border-radius: 1rem;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
 .nemcc .notice-panel .panel-icon {
     background: linear-gradient( 180deg, #2f6dc7 0%, #2155a1 100% );
}
 .nemcc .alert-panel .panel-icon {
     background: linear-gradient( 180deg, #d93434 0%, #b92323 100% );
}
 .nemcc .panel-icon i {
     color: #ffffff;
     font-size: 1.4rem;
}
/************************************************ CONTENT ************************************************/
 .nemcc .panel-content {
     flex: 1;
}
 .nemcc .panel-content .section-eyebrow {
     margin-bottom: .35rem;
}
 .nemcc .panel-content .section-heading {
     font-size: clamp(1.5rem, 2vw, 1.9rem);
     margin-bottom: .75rem;
}
 .nemcc .panel-content p {
     font-size: 1rem;
     line-height: 1.75;
     margin: 0 0 .9rem;
     color: #444;
     max-width: 58rem;
}
 .nemcc .panel-content ul {
     margin: .75rem 0 0 1.2rem;
}
 .nemcc .panel-content li {
     margin-bottom: .45rem;
     line-height: 1.65;
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .notice-panel, .nemcc .alert-panel {
         flex-direction: column;
         padding: 1.25rem;
    }
     .nemcc .panel-icon {
         width: 52px;
         height: 52px;
         min-width: 52px;
    }
     .nemcc .panel-icon i {
         font-size: 1.15rem;
    }
}
/************************************************ CTA / CONTACT PANELS ************************************************/
 .nemcc .cta-panel {
     display: grid;
     grid-template-columns: 88px 1fr;
     gap: 2rem;
     align-items: center;
     background: linear-gradient( 180deg, #f8f5ee 0%, #f4efe3 100% );
     border: 1px solid #e7dfcf;
     border-radius: 1.5rem;
     padding: 2rem;
     margin: 0 0 2rem 0;
     display: grid;
}
/************* DARK CONTACT PANEL *************/
 .nemcc .contact-panel {
     display: grid;
     grid-template-columns: 1.2fr 420px;
     gap: 3rem;
     align-items: center;
     background: #0c0c0c;
     border-radius: 1.5rem;
     padding: 2rem;
     margin: 3rem 0;
}
/************************************************ ICON ************************************************/
 .nemcc .cta-panel-icon {
     width: 78px;
     height: 78px;
     border-radius: 50%;
     background: rgba(203,182,119,.14);
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
 .nemcc .cta-panel-icon i {
     font-size: 2rem;
     color: #8b5a12;
}
/************************************************ CONTENT ************************************************/
 .nemcc .cta-panel-content {
     flex: 1;
}
 .nemcc .cta-panel-content .section-heading {
     margin-bottom: 1rem;
}
 .nemcc .cta-panel-content .section-intro {
     margin-bottom: 1.5rem;
}
/************************************************ STORE LINKS ************************************************/
 .nemcc .cta-store-links {
     display: flex;
     flex-wrap: wrap;
     gap: 1rem;
     margin-bottom: 1rem;
}
 .nemcc .cta-button, .nemcc .cta-button:link, .nemcc .cta-button:visited {
     display: inline-flex;
     align-items: center;
     gap: .7rem;
     background: #111111;
     color: #ffffff !important;
     -webkit-text-fill-color: #ffffff !important;
     text-decoration: none !important;
     padding: 1rem 1.15rem;
     border-radius: 1rem;
     font-size: .95rem;
     font-weight: 700;
     line-height: 1.2;
     transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
 .nemcc .cta-button *, .nemcc .cta-button span, .nemcc .cta-button i {
     color: #ffffff !important;
     -webkit-text-fill-color: #ffffff !important;
}
 .nemcc .cta-button:hover {
     background: #1c1c1c;
     transform: translateY(-2px);
     box-shadow: 0 10px 24px rgba(0,0,0,.08);
}
/************************************************ SECONDARY LINK ************************************************/
 .nemcc .cta-panel-link a, .nemcc .cta-panel-link a:visited {
     color: #8b5a12 !important;
     text-decoration: none !important;
     font-size: .96rem;
     font-weight: 600;
}
 .nemcc .cta-panel-link a:hover {
     text-decoration: underline !important;
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .cta-panel {
         flex-direction: column;
         align-items: flex-start;
         padding: 2rem;
    }
     .nemcc .cta-store-links {
         width: 100%;
         flex-direction: column;
    }
     .nemcc .cta-button {
         width: 100%;
         justify-content: center;
    }
}
/************************************************ RESPONSIVE ************************************************/
 @media screen and (max-width: 1000px) {
     .nemcc .cta-panel, .nemcc .contact-panel {
         grid-template-columns: 1fr;
    }
}
 @media screen and (max-width: 768px) {
     .nemcc .card-grid, .nemcc .card-grid-3 {
         grid-template-columns: 1fr;
    }
     .nemcc .notice-panel, .nemcc .alert-panel {
         flex-direction: column;
         padding: 1.75rem;
    }
     .nemcc .panel-icon {
         width: 64px;
         height: 64px;
    }
     .nemcc .section-block {
         margin: 3rem 0;
    }
     .nemcc .cta-panel, .nemcc .contact-panel {
         padding: 1.75rem;
    }
}
/************************************************ RESOURCE GRID ************************************************/
 .nemcc .resource-grid {
     display: grid;
     grid-template-columns: repeat(3, minmax(0, 1fr));
     gap: 1rem;
}
/************************************************ RESOURCE LINK ************************************************/
 .nemcc .resource-link {
     display: flex;
     align-items: center;
     gap: 1rem;
     background: #ffffff;
     border: 1px solid #e8e2d6;
     border-radius: 1rem;
     padding: 1.15rem 1.25rem;
     text-decoration: none !important;
     transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}
 .nemcc .resource-link:hover {
     border-color: #cbb677;
     background: #fcfaf5;
     transform: translateY(-2px);
}
/************************************************ RESOURCE ICON ************************************************/
 .nemcc .resource-icon {
     width: 42px;
     height: 42px;
     border-radius: 50%;
     background: rgba(203,182,119,.12);
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
 .nemcc .resource-icon i {
     color: #8b5a12;
     font-size: 1rem;
     line-height: 1;
     transform: translateX(1px);
}
/************************************************ RESOURCE TEXT ************************************************/
 .nemcc .resource-text {
     flex: 1;
     font-size: .98rem;
     font-weight: 700;
     line-height: 1.4;
     color: #222;
}
/************************************************ ARROW ************************************************/
 .nemcc .resource-arrow {
     color: #8b5a12;
     font-size: .85rem;
     flex-shrink: 0;
     transition: transform .2s ease;
}
 .nemcc .resource-link:hover .resource-arrow {
     transform: translateX(3px);
}
/************************************************ TABLET ************************************************/
 @media screen and (max-width: 1100px) {
     .nemcc .resource-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .resource-grid {
         grid-template-columns: 1fr;
    }
     .nemcc .resource-link {
         padding: 1rem 1.1rem;
    }
     .nemcc .resource-text {
         font-size: .95rem;
    }
}
/************************************************ NEUTRAL NOTICE PANEL ************************************************/
 .nemcc .notice-panel-neutral {
     background: linear-gradient( 135deg, #f8f5ee 0%, #fcfaf5 100% );
     border: 1px solid #e7dfcf;
     box-shadow: 0 10px 28px rgba(0,0,0,.04);
}
 .nemcc .notice-panel-neutral .panel-icon {
     background: linear-gradient( 180deg, #8b5a12 0%, #6f4710 100% );
}
/************************************************ INLINE CONTACT ************************************************/
 .nemcc .contact-inline {
     display: flex;
     flex-direction: column;
     gap: 0;
     margin-top: 0;
     font-size: .98rem;
     line-height: 1.3;
}
 .nemcc .contact-inline strong {
     color: #222;
}
 .nemcc .contact-inline span {
     color: #555;
}
 .nemcc .contact-inline a, .nemcc .contact-inline a:visited {
     color: #8b5a12 !important;
     text-decoration: none !important;
}
 .nemcc .contact-inline a:hover {
     text-decoration: underline !important;
}
/************************************************ PANEL ACTION ************************************************/
 .nemcc .panel-action {
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
}
/************************************************ TABLET ************************************************/
 @media screen and (max-width: 1000px) {
     .nemcc .panel-action {
         justify-content: flex-start;
    }
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .panel-action {
         width: 100%;
    }
     .nemcc .panel-action .btn {
         width: 100%;
    }
}
/************************************************ SECTION NOTE ************************************************/
 .nemcc .section-note {
     margin-top: 1.25rem;
     font-size: .96rem;
     line-height: 1.7;
     color: #666;
}
/************************************************ POLICY LIST ************************************************/
 .nemcc .policy-list {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: 1rem 2rem;
     margin-top: 1.5rem;
}
/************************************************ POLICY ITEM ************************************************/
 .nemcc .policy-item {
     display: flex;
     align-items: flex-start;
     gap: 1rem;
}
 .nemcc .policy-item i {
     color: #8b5a12;
     font-size: 1rem;
     margin-top: .2rem;
     flex-shrink: 0;
}
/************************************************ TEXT ************************************************/
 .nemcc .policy-item strong {
     display: block;
     font-size: 1rem;
     line-height: 1.3;
     color: #222;
     margin-bottom: .25rem;
}
 .nemcc .policy-item p {
     margin: 0;
     font-size: .95rem;
     line-height: 1.7;
     color: #555;
}
/************************************************ MOBILE ************************************************/
 @media screen and (max-width: 768px) {
     .nemcc .policy-list {
         grid-template-columns: 1fr;
    }
}
/************************************************ SIDEBAR FEATURE ************************************************/
 .nemcc .feature-sidebar {
     margin: 2rem 0;
}
/************************************************ IMAGE ************************************************/
 .nemcc .feature-sidebar .feature-media {
     margin-bottom: 1.25rem;
}
 .nemcc .feature-sidebar .feature-media img {
     width: 100%;
     aspect-ratio: 4 / 5;
     object-fit: cover;
     display: block;
}
/************************************************ TEXT ************************************************/
 .nemcc .feature-sidebar .section-eyebrow {
     margin-bottom: .45rem;
}
 .nemcc .feature-sidebar .section-heading {
     font-size: clamp(1.75rem, 2.5vw, 2.25rem);
     line-height: 1.08;
     margin-bottom: .9rem;
}
 .nemcc .feature-sidebar .section-intro {
     font-size: 1.02rem;
     line-height: 1.8;
     color: #444;
     margin-bottom: 1rem;
}
 .nemcc ,feature-content .section-intro ( font-size: 1.02rem;
 line-height1.8;
 color:#444;
 margin-bottom:1rem;
 ) 
/************************************************ INLINE NOTE ************************************************/
 .nemcc .feature-note {
     display: flex;
     align-items: flex-start;
     gap: .75rem;
     padding: 1rem;
     margin-top: 1rem;
     background: #faf7f2;
     border: 1px solid #ece2d2;
     border-radius: 1rem;
     font-size: .95rem;
     line-height: 1.6;
     color: #555;
}
 .nemcc .feature-note i {
     color: #b42323;
     margin-top: .15rem;
     flex-shrink: 0;
}
/************************************************ SERVICE GRID MODIFIER ************************************************/
 .support-grid.support-services {
     gap: 2.5rem 4rem;
     padding: 2rem 0 !important;
}
 .support-services .support-icon {
     background: rgba(203,182,119,.12);
     transform: none;
}
 .support-services .support-icon i {
     transform: none;
}
 .support-services .support-content p {
     max-width: 34ch;
}
 .support-links-inline {
     display: flex;
     flex-wrap: wrap;
     gap: 1rem 2rem;
     margin-top: 2rem;
     padding-top: 1.5rem;
     border-top: 1px solid rgba(0,0,0,.08);
}
/* LIGHT FEATURED SUPPORT OVERRIDE ************************************************/
 .support-services .support-item.featured-support {
     background: #faf7f0;
     border: 1px solid rgba(203,182,119,.18);
     border-radius: 1rem;
     padding: 1.25rem 1.5rem;
}
/************************************************ TEXT RESET ************************************************/
 .support-services .support-item.featured-support h3 a {
     color: #8b5a12 !important;
}
 .support-services .support-item.featured-support p {
     color: #555 !important;
}
/************************************************ ICON RESET ************************************************/
 .support-services .support-item.featured-support .support-icon {
     width: 72px;
     height: 72px;
     background: rgba(203,182,119,.16);
}
 .support-services .support-item.featured-support .support-icon i {
     color: #8b5a12 !important;
}

.section-utility-link {

     margin-bottom: 4rem;

}


/************************************************ HEADING SIZE ************************************************/
.support-services .support-item.featured-support h3 {

     font-size: 1.5rem;

}