/* Shared responsive and accessibility fixes. */
:focus-visible{outline:3px solid #816337;outline-offset:4px}
picture{display:contents}
.g2>*,.g3>*,.g4>*,.accepts>*,.d-top>*,.fg>*{min-width:0}
@media(max-width:1100px){.d-top{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1200px){
 .nav{position:relative}
 .nav .in{height:auto;min-height:66px;display:flex;flex-wrap:wrap;gap:12px;padding-top:12px;padding-bottom:12px}
 .nav .brand{flex-shrink:0}
 .nav .r{margin-left:auto;min-width:0}
 .nav .r .btn{white-space:normal;font-size:11px;padding:10px 12px;max-width:180px}
 .nav nav{display:flex;flex:1 0 100%;order:3;flex-wrap:wrap;gap:4px 16px;border-top:1px solid var(--hair);padding-top:8px}
 .nav nav a{display:flex;align-items:center;min-height:44px;font-size:12px}
 .util .in{padding:8px var(--s5)}
 .util .r{flex-wrap:wrap;gap:4px 16px}
}
@media(max-width:640px){
 .wrap{padding-left:20px;padding-right:20px}
 .nav .in{gap:8px}
 .nav .r{flex:1}
 .nav .r .btn{float:right;max-width:100%}
 .nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
 .g2,.g3,.g4,.accepts,.bars,.faq,.reach{grid-template-columns:minmax(0,1fr)}
 .cap h3,.smp h3{white-space:normal}
 .sh{flex-wrap:wrap;gap:10px}
 .sh .note,.sh .more{white-space:normal}
 .sh .r{min-width:12px}
 .btn{max-width:100%;white-space:normal}
 .ctaacts{width:100%;grid-auto-flow:row;grid-template-columns:minmax(0,1fr)}
 .cta>*{min-width:0;max-width:100%}
 .mail .addr{overflow-wrap:anywhere}
 .kit li{white-space:normal}
 .fg{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:360px){.mets,.certs,.stages{grid-template-columns:minmax(0,1fr)}}
