/* Services directory only; shared navbar/footer untouched. */
.smc-directory { color:#092754;background:#fff;overflow:clip }
.smc-directory * { box-sizing:border-box }
.smc-directory [hidden] { display:none!important }
.smc-directory .mc-services-container,.smc-directory .mc-hero-container { width:min(1360px,100%);padding-inline:28px;margin:auto }
.smc-directory .mc-hero-section { background:linear-gradient(135deg,#f7fbff,#eaf3ff);padding:42px 0;border-bottom:1px solid #e2ecf7;text-align:center }
.smc-directory .mc-hero-title { font-size:clamp(28px,3.4vw,43px);font-weight:800;line-height:1.25;color:#092754;margin:0 }
.smc-directory .mc-hero-accent-line { width:70px;height:4px;border-radius:5px;margin:18px auto 0;background:#ffda31 }
.smc-directory .mc-services-section { padding:38px 0 50px }
.smc-directory .mc-services-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start }
.smc-directory .mc-state-col { min-width:0;border:1px solid #dce7f4;border-radius:20px;padding:23px;background:#fff;box-shadow:0 8px 28px #0b305e08 }
.smc-directory .mc-state-title { margin:0 0 18px;padding:13px 16px;border-radius:12px;background:#eaf3ff;color:#092754;font-size:19px;font-weight:800;letter-spacing:.02em;line-height:1.4 }
.smc-directory .mc-service-list { display:flex;flex-direction:column;gap:0;list-style:none;padding:0;margin:0 }
.smc-directory .mc-service-list li { margin:0;border-bottom:1px solid #eef3f8 }
.smc-directory .mc-service-list a { display:block;padding:11px 4px;font-size:13px;font-weight:600;color:#27476c;line-height:1.6;text-decoration:none;overflow-wrap:anywhere;transition:color .2s }
.smc-directory .mc-service-list a:hover { color:#1469e9 }
.smc-directory .dir-more { display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 18px;margin-top:20px;border:1px solid #e5bd37;border-radius:12px;background:#ffda31;color:#092754;font:inherit;font-size:14px;font-weight:800;cursor:pointer;animation:dir-button-glow 2.8s ease-in-out infinite }
.smc-directory .dir-more span:last-child { font-size:19px;line-height:1 }
.smc-directory .dir-cta { padding:30px 0;background:linear-gradient(105deg,#043369,#07539e 70%,#063469);border-top:3px solid #ffda31 }
.smc-directory .dir-cta > div { display:flex;align-items:center;justify-content:space-between;gap:26px }
.smc-directory .dir-cta h2 { margin:0;font-size:clamp(23px,2.4vw,31px);font-weight:800;line-height:1.3;color:#fff }
.smc-directory .dir-cta h2 span { color:#ffda31 }
.smc-directory .dir-cta p { margin:10px 0 0;color:#deebf8;font-size:14px;line-height:1.7 }
.smc-directory .dir-cta a { display:inline-flex;align-items:center;justify-content:center;gap:18px;flex-shrink:0;min-height:50px;padding:15px 25px;border-radius:12px;background:#ffda31;color:#092754;font-weight:800;font-size:14px;text-decoration:none }
.smc-directory :is(a,button):focus-visible { outline:3px solid #1469e9;outline-offset:4px }
@keyframes dir-button-glow { 0%,100% { box-shadow:0 4px 12px #d5b43118 } 50% { box-shadow:0 0 0 3px #ffda3140,0 7px 18px #d5b43130 } }
@media(max-width:1100px) { .smc-directory .mc-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)) } }
@media(max-width:700px) { .smc-directory .mc-services-grid { grid-template-columns:minmax(0,1fr);gap:18px } .smc-directory .mc-services-container,.smc-directory .mc-hero-container { padding-inline:18px } .smc-directory .mc-state-col { padding:19px } .smc-directory .dir-cta > div { flex-direction:column;align-items:flex-start } }
@media(max-width:360px) { .smc-directory .mc-services-container,.smc-directory .mc-hero-container { padding-inline:12px } .smc-directory .mc-state-col { padding:16px } }
@media(prefers-reduced-motion:reduce) { .smc-directory .dir-more { animation:none } .smc-directory .mc-service-list a { transition:none } }

