/* WCAG 2.1 improvements: contrast, focus, reflow and text spacing. */
.site-footer, .footer-copy {color:#382d20;}
.site-footer nav a:hover, .site-footer nav a.active {color:#382d20;}
.site-footer .footer-copy {opacity:1;}
.social-icons-footer a svg, .social-icons-footer a:hover svg {fill:#382d20;}
.btn.primary:hover {background:#71583e;color:#fff;}
/* A predictable dark backing protects white text over every hero photograph. */
.hero-overlay {background:rgba(0,0,0,.72);}
input, textarea, .pn-chatbot-input, .pn-chatbot-quick-btn {border-color:#767676;}
input[type="checkbox"] {accent-color:#71583e;}
:where(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline:3px solid #163b68 !important;
  outline-offset:3px !important;
  box-shadow:0 0 0 6px #fff !important;
}
.skip-link:focus {position:fixed;z-index:30000;}
main:focus {outline:none;}
:where(a,button,input,textarea,select,[tabindex]) {scroll-margin-top:180px;}
.main-nav ul > li > a {white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;}
.main-nav ul > li {min-width:0;}
.lang-menu {max-width:calc(100vw - 24px);max-height:70vh;overflow:auto;}
.pn-chatbot-input {min-width:0;width:100%;}
.pn-chatbot-window {
  height:min(500px,calc(100dvh - var(--header-h,0px) - var(--chatbot-safe-bottom,18px) - 78px));
  max-height:calc(100dvh - var(--header-h,0px) - var(--chatbot-safe-bottom,18px) - 78px);
}
.pn-chatbot-quick-btn {white-space:normal;text-overflow:clip;overflow-wrap:anywhere;}
.pn-chatbot-quick-questions {max-height:25%;}
.pn-chatbot-bubble {overflow-wrap:anywhere;}
.pn-chatbot-title, .pn-chatbot-input-area {min-width:0;}
.pn-chatbot-send {flex-shrink:0;}
.pn-chatbot-messages {min-height:60px;}
.espa-modal-title,.espa-modal-copy {overflow-wrap:anywhere;}
@media(max-height:600px){
  .site-header {position:relative;}
  .pn-chatbot-window {top:8px;bottom:calc(var(--chatbot-safe-bottom,8px) + 62px);height:auto;max-height:calc(100dvh - var(--chatbot-safe-bottom,8px) - 70px);}
  .pn-chatbot-toggle {bottom:var(--chatbot-safe-bottom,8px);}
}
