/* Shared non-header text navigation: approved soft-fill family. */
a.soft-link,button.soft-link{box-sizing:border-box;display:inline-flex!important;align-items:center;justify-content:space-between;gap:20px;max-width:100%;width:fit-content;min-height:46px;margin-top:0;padding:7px 8px 7px 18px!important;border:1px solid #bfcaaf!important;border-radius:999px!important;background:#e8eddf!important;color:#143f35!important;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none!important;text-align:left;vertical-align:middle;transition:background .25s,color .25s,border-color .25s,box-shadow .25s,transform .25s}
.soft-link-label{min-width:0;white-space:normal;overflow-wrap:anywhere}.soft-link-arrow{display:grid!important;place-items:center;width:30px;height:30px;border-radius:50%;background:#143f35;color:#f7f6ef;flex:none;margin:0!important;transition:background .25s,color .25s,transform .25s}.soft-link-arrow svg{width:17px;height:17px}
a.soft-link:hover,button.soft-link:hover{background:#143f35!important;color:#f7f6ef!important;border-color:#143f35!important;transform:translateY(-2px);box-shadow:0 6px 18px #143f351a}
.soft-link:hover .soft-link-arrow{background:#f7f6ef;color:#143f35;transform:translateX(2px)}.soft-link:active{transform:none!important;box-shadow:none!important}.soft-link:focus-visible,.soft-stage-button:focus-visible{outline:2px solid #527038;outline-offset:4px}
.hero-note a.soft-link{margin-top:20px;font-size:15px}.principal-return.soft-link{margin-top:35px}.footer-links{flex-wrap:wrap;gap:12px}.footer-links .soft-link{font-size:12px;min-height:42px}.footer-links .soft-link-arrow{width:26px;height:26px}.contact-section .phone.soft-link,.phone.soft-link{font-size:clamp(24px,3.3vw,43px);letter-spacing:-1px;gap:25px;padding-left:24px!important}.phone.soft-link .soft-link-arrow{width:40px;height:40px}.contact-section .btn.soft-link{font-size:14px;gap:20px}.overview-program-name h3 .soft-link{font-size:22px;line-height:1.35;gap:12px;padding:5px 7px 5px 14px!important;min-height:40px}.overview-program-name h3 .soft-link-arrow{width:27px;height:27px}.course-chrome .course-back.soft-link{font-size:12px;min-height:38px;padding:4px 5px 4px 12px!important;gap:13px;white-space:normal}.course-back.soft-link .soft-link-label{display:inline!important}.course-back.soft-link .soft-link-label>span{color:inherit;margin-left:5px}.course-back.soft-link .soft-link-arrow{width:27px;height:27px}.course-bottom a.soft-link{font-size:13px;min-height:42px;padding:5px 6px 5px 15px!important;gap:17px}.course-bottom .soft-link-label>b{display:none}.course-continue button.soft-link{font-size:13px;min-height:42px;padding:5px 6px 5px 15px!important;gap:25px}.course-continue button.soft-link span.soft-link-label{font-size:inherit}.course-continue button.soft-link span.soft-link-arrow{font-size:inherit}.academic-progression button.soft-stage-button{border:1px solid #bfcaaf;background:#e8eddf;color:#6a795c;border-radius:999px;padding:6px 15px;min-height:34px;line-height:1.5;transition:background .25s,color .25s,border-color .25s}.academic-progression button.soft-stage-button.current{background:#fdfcf6;color:#143f35;border-color:#bbc7aa;box-shadow:0 2px 5px #143f3510}.academic-progression button.soft-stage-button:hover{background:#dbe4cf;color:#143f35}.soft-close-button{display:grid;place-items:center;border:1px solid #bfcaaf!important;border-radius:50%!important;background:#e8eddf!important;color:#143f35!important;width:38px!important;height:38px!important;line-height:1;flex:none;transition:background .25s,color .25s}.soft-close-button:hover{background:#143f35!important;color:#f7f6ef!important}.overview-photo>i{width:36px;height:36px;display:grid;place-items:center;border:1px solid #ffffff80;border-radius:50%;background:#143f35aa;font-size:22px;transition:background .25s,transform .25s}.overview-photo:hover>i{background:#143f35;transform:translate(2px,-2px)}.openhouse-reserve.soft-link{width:100%;justify-content:space-between;min-height:56px;font-size:18px;padding-left:24px!important}.openhouse-reserve.soft-link .soft-link-arrow{width:38px;height:38px}.openhouse-location a.soft-link,.openhouse-notes a.soft-link{font-size:14px}.openhouse-notes a.soft-link{min-height:40px;padding:4px 6px 4px 13px!important;margin-top:8px}.soft-link-label>span[aria-hidden=true]{display:none}
@media(min-width:1025px) and (max-height:950px){.programs-overview .overview-inner{gap:12px}.overview-photo{height:110px}.overview-program-name h3 .soft-link{font-size:20px;min-height:38px;padding-top:4px!important;padding-bottom:4px!important}.course-bottom{padding-top:10px}.academic-progression{padding-bottom:10px}.academic-progression button.soft-stage-button{font-size:13px;padding:4px 12px;min-height:30px}.course-continue{padding-top:10px}}
@media(max-width:1024px){.course-back.soft-link .soft-link-label>span{display:none}.course-bottom{flex-wrap:wrap;gap:12px}.course-bottom a.soft-link{font-size:12px}.course-chrome-inner{gap:7px}.academic-progression{gap:12px}.academic-progression button.soft-stage-button{padding:5px 10px;font-size:12px}.hero-note a.soft-link{font-size:14px}.soft-close-button{width:32px!important;height:32px!important}}
@media(max-width:600px){.course-chrome .course-back.soft-link{padding:3px 8px!important;min-height:34px;font-size:10px;gap:0}.course-chrome .course-back .soft-link-arrow{display:none!important}.course-local button{padding-left:9px;padding-right:9px}.course-close.soft-close-button{width:27px!important;height:27px!important;font-size:24px}.overview-program-name h3 .soft-link{font-size:23px;min-height:44px}.academic-progression{gap:7px}.academic-progression>span{font-size:10px}.academic-progression button.soft-stage-button{font-size:10px;padding:6px 9px;min-height:38px}.course-bottom a.soft-link{max-width:100%;min-height:44px;font-size:12px;gap:12px}.course-continue button.soft-link{font-size:12px;gap:15px}.principal-return.soft-link{font-size:13px;gap:15px}.phone.soft-link{font-size:29px}.footer-links .soft-link{min-height:44px}.hero-note a.soft-link{width:260px}.openhouse-reserve.soft-link{font-size:16px}}
@media(prefers-reduced-motion:reduce){.soft-link,.soft-link-arrow,.soft-stage-button,.soft-close-button,.overview-photo>i{transition:none!important}.soft-link:hover,.soft-link:hover .soft-link-arrow,.overview-photo:hover>i{transform:none!important}}
@media(min-width:1025px) and (max-height:950px){.academic-screen .detail-inner{gap:13px}}

/* Center footer menu labels within each button. */
.footer-links a.soft-link{position:relative;justify-content:center;font-size:15px;text-align:center;padding:7px 38px!important}
.footer-links .soft-link-label{flex:1;text-align:center}
.footer-links .soft-link-arrow{position:absolute;right:8px;top:50%;margin-top:-13px!important}


/* Keep the admissions reservation label readable and centered. */
a.openhouse-reserve.soft-link{position:relative;justify-content:center;min-height:60px;font-size:24px;font-weight:700!important;text-align:center;white-space:normal;padding:12px 54px!important;color:#143f35!important}
.openhouse-reserve.soft-link .soft-link-label{flex:1;color:inherit;font-size:inherit;text-align:center}
.openhouse-reserve.soft-link .soft-link-arrow{position:absolute;right:10px;top:50%;margin-top:-19px!important;color:inherit}
@media(max-width:600px){a.openhouse-reserve.soft-link{font-size:20px}}


a.openhouse-reserve.soft-link:hover,a.openhouse-reserve.soft-link:focus-visible{background:#143f35!important;color:#f7f6ef!important;border-color:#143f35!important}
a.openhouse-reserve.soft-link:hover .soft-link-arrow,a.openhouse-reserve.soft-link:focus-visible .soft-link-arrow{background:transparent!important;color:#f7f6ef!important}


.openhouse-notes a.soft-link[href^='tel:']{position:relative;justify-content:center;font-size:17px;min-height:44px;text-align:center;padding:6px 38px!important}
.openhouse-notes a.soft-link[href^='tel:'] .soft-link-label{flex:1;text-align:center;color:inherit;font-size:inherit}
.openhouse-notes a.soft-link[href^='tel:'] .soft-link-arrow{position:absolute;right:6px;top:50%;margin-top:-15px!important}


.footer-blog .soft-link-label{display:flex;align-items:center;justify-content:center;gap:8px}
.footer-blog img{width:28px;height:28px;object-fit:contain;flex:none}


/* Separate global blog link, shared by overview and course detail pages. */
.site-blog-link{position:fixed;right:24px;bottom:18px;z-index:45;display:inline-flex;align-items:center;gap:7px;color:#143f35;font-size:15px;font-weight:600;text-decoration:none;text-shadow:0 0 4px #f7f6ef,0 0 8px #f7f6ef}
.site-blog-link img{width:30px;height:30px;object-fit:contain}
.site-blog-link:hover{text-decoration:underline;text-underline-offset:4px}
.site-blog-link:focus-visible{outline:2px solid #527038;outline-offset:4px}
@media(max-width:600px){.site-blog-link{right:16px;bottom:76px;font-size:14px}}

