/* Sofiology International + Accessibility */
:root{--sof-user-font-scale:1;--sof-focus:#0d5b38}
html{font-size:calc(100% * var(--sof-user-font-scale))}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--sof-focus);outline-offset:3px}
.sof-language{position:relative;z-index:24}.sof-language summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;min-width:44px;min-height:44px;padding:0 10px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.06em}.sof-language summary::-webkit-details-marker{display:none}.sof-language summary svg{width:18px;height:18px}.sof-language__menu{position:absolute;inset-inline-end:0;top:calc(100% + 9px);min-width:190px;padding:7px;background:#fff;color:#172019;border:1px solid rgba(23,32,25,.14);border-radius:14px;box-shadow:0 20px 50px rgba(16,34,24,.16)}.sof-language__item{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border-radius:9px;color:inherit;text-decoration:none}.sof-language__item:hover,.sof-language__item:focus-visible{background:#eef4ea}.sof-language__item.is-current{background:#e7f0e2}.sof-language__item.is-disabled{opacity:.45}.sof-language__item b{font-size:11px;letter-spacing:.08em}.sof-language__item span{font-size:13px;font-weight:650}
.sof-accessibility-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:0 10px;border:0;background:transparent;color:inherit;cursor:pointer}.sof-accessibility-trigger svg{width:20px;height:20px}.sof-accessibility-trigger__label{font-size:12px;font-weight:750}.sof-header__actions .sof-accessibility-trigger__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sof-accessibility-dialog{width:min(620px,calc(100vw - 28px));max-height:min(780px,calc(100vh - 28px));padding:0;border:0;border-radius:20px;background:#fff;color:#172019;box-shadow:0 30px 90px rgba(4,17,10,.28)}.sof-accessibility-dialog::backdrop{background:rgba(6,18,11,.62);backdrop-filter:blur(3px)}.sof-accessibility-dialog__inner{padding:24px}.sof-accessibility-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid #dde4dc}.sof-accessibility-dialog__head h2{margin:.15rem 0 0;font-size:clamp(1.55rem,4vw,2.25rem)}.sof-accessibility-dialog__groups{display:grid;gap:18px;padding:22px 0}.sof-accessibility-dialog fieldset{margin:0;padding:0;border:0}.sof-accessibility-dialog legend{margin-bottom:9px;font-weight:800}.sof-preference-options{display:flex;flex-wrap:wrap;gap:8px}.sof-preference-options button,.sof-preference-toggle{min-height:44px;border:1px solid #cfd9cf;border-radius:10px;background:#fff;color:#172019}.sof-preference-options button{padding:9px 14px;cursor:pointer}.sof-preference-options button[aria-pressed=true]{background:#173c2a;color:#fff;border-color:#173c2a}.sof-preference-toggle{display:flex;align-items:center;gap:10px;padding:9px 13px;cursor:pointer}.sof-preference-toggle input{width:20px;height:20px}.sof-accessibility-dialog__actions{display:flex;justify-content:flex-end;gap:10px;padding-top:18px;border-top:1px solid #dde4dc}
.sof-language-suggestion{position:fixed;z-index:100000;inset-inline:18px;bottom:18px;margin-inline:auto;max-width:760px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#12291d;color:#fff;border:1px solid rgba(255,255,255,.13);border-radius:16px;box-shadow:0 20px 55px rgba(4,16,9,.28)}.sof-language-suggestion[hidden]{display:none}.sof-language-suggestion__copy{display:flex;align-items:center;gap:12px}.sof-language-suggestion__copy svg{width:24px;height:24px;flex:0 0 auto}.sof-language-suggestion__copy div{display:grid;gap:2px}.sof-language-suggestion__copy strong{font-size:14px}.sof-language-suggestion__copy span{font-size:12px;color:rgba(255,255,255,.76)}.sof-language-suggestion__actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.sof-language-suggestion__actions .button{min-height:42px}.sof-language-suggestion__actions button{min-height:42px;padding:0 8px;border:0;background:transparent;color:#fff;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
html[data-sof-text-size=large]{--sof-user-font-scale:1.10}html[data-sof-text-size=xlarge]{--sof-user-font-scale:1.20}
html[data-sof-high-contrast="1"]{--sof-color-text:#0a0a0a;--sof-color-dark:#050505;--sof-color-border:#6a6a6a;--sof-focus:#005fcc}html[data-sof-high-contrast="1"] .button--primary{box-shadow:0 0 0 2px #fff,0 0 0 5px #111}html[data-sof-underline-links="1"] a:not(.button):not(.custom-logo-link){text-decoration:underline!important;text-underline-offset:.16em;text-decoration-thickness:.08em}
html[data-sof-reduce-motion="1"] *,html[data-sof-reduce-motion="1"] *::before,html[data-sof-reduce-motion="1"] *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media (max-width:920px){.sof-header__actions .sof-accessibility-trigger{display:none}.sof-language--header summary{padding:0 8px}.sof-language__menu{inset-inline-end:0}.sof-accessibility-trigger--mobile{width:100%;justify-content:flex-start;padding:8px 0}.sof-accessibility-trigger--mobile .sof-accessibility-trigger__label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}.sof-language-suggestion{align-items:flex-start;flex-direction:column}.sof-language-suggestion__actions{width:100%}.sof-language-suggestion__actions .button{flex:1}.sof-accessibility-dialog__actions{flex-direction:column}.sof-accessibility-dialog__actions .button{width:100%}}
.sof-mobile-nav__utilities{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 0 12px;margin-bottom:8px;border-bottom:1px solid rgba(23,32,25,.12)}
.sof-site-footer__utilities{display:flex;align-items:center;gap:8px}.sof-site-footer__utilities .sof-language summary,.sof-site-footer__utilities .sof-accessibility-trigger{color:inherit}.sof-site-footer__utilities .sof-language__menu{bottom:calc(100% + 9px);top:auto}
@media (max-width:920px){.sof-site-footer__bottom{align-items:flex-start;gap:14px}.sof-site-footer__utilities{width:100%;justify-content:flex-start}}
