/* Shared accessibility and small supporting pages; preserves each feature's visual design. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid #287887!important;outline-offset:4px!important;box-shadow:0 0 0 2px #fff!important}
button:disabled{cursor:default;opacity:.68}
a,button,textarea,input{touch-action:manipulation}
textarea{max-width:100%;font-size:16px}
.site-support{clear:both;background:#edf7f8;color:#052453;padding:30px max(20px,4vw);font-family:system-ui,sans-serif;font-size:14px;border-top:1px solid #c5dadd}
.site-support nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;max-width:1150px;margin:auto}
.site-support a{display:inline-flex;align-items:center;min-height:44px;line-height:1.4;text-decoration:underline;text-underline-offset:4px;color:inherit}
.site-support p{max-width:760px;margin:12px auto 0;line-height:1.6;text-align:center;font-size:12px;color:#496074}
.site-support [aria-current=page]{font-weight:750}
.skip-link{position:fixed;left:16px;top:-150px;z-index:100;padding:14px 18px;color:#052453!important;background:#fffdf6;border:2px solid #052453;border-radius:8px;text-decoration:none}
.skip-link:focus{top:12px}
.woo-choice{font:inherit;color:#173b4c;cursor:pointer}
.woo-choice[aria-pressed=true]{outline:3px solid #052453;outline-offset:2px}
#woo-copy-text{width:100%;padding:12px;min-height:120px;color:#173b4c;background:white;border:1px solid #8ba7a9;border-radius:10px;line-height:1.5}
#woo-choice-status{font-size:14px;min-height:1.5em}
#jar-tools{display:flex;gap:12px;flex-wrap:wrap;margin-block:20px}
#jar-tools button,#jar-more,#jar-confirm button{font:inherit;color:#283f3a;border:1px solid #8aa097;border-radius:99px;background:#fffdf6;min-height:44px;padding:12px 18px;cursor:pointer}
#jar-confirm{background:#fff7e9;border:1px solid #bdb29e;border-radius:16px;padding:20px;margin:20px 0;overflow-wrap:anywhere}
#jar-confirm-text{font-size:15px}
#jar-confirm button+button{margin:8px 0 0 8px}
#jar-storage{font-size:13px;color:#496458;line-height:1.65}
#jar-more{margin-top:16px}
.entry button{min-height:44px}
#glass .note{animation:none}
.quality-page{margin:0;background:#edf7f8;color:#052453;font-family:'Bricolage Grotesque',system-ui,sans-serif}
.quality-page header{max-width:1000px;margin:auto;padding:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px}
.quality-page header a{color:inherit;min-height:44px;display:inline-flex;align-items:center}
.quality-page main{max-width:820px;margin:20px auto 70px;padding:clamp(24px,5vw,56px);background:#fffdf6;border:1px solid #c5dadd;border-radius:24px}
.quality-page h1{font-size:clamp(40px,7vw,68px);line-height:1.05;letter-spacing:-.045em;margin:0 0 25px}
.quality-page h2{font-size:28px;line-height:1.2;margin-top:35px}
.quality-page p,.quality-page li{font-size:17px;line-height:1.75}
.quality-page a{color:#0d5667;text-underline-offset:4px}
.quality-page .eyebrow{font:11px 'Space Mono',monospace;letter-spacing:.06em}
.quality-page button{font:inherit;background:#052453;color:white;border:1px solid #052453;border-radius:30px;padding:14px 20px;min-height:48px;margin:6px 8px 6px 0}
@media(max-width:520px){.quality-page main{margin:10px 16px 40px;padding:26px 22px}.site-support nav{justify-content:flex-start}.site-support p{text-align:left}.site-header{border-radius:24px!important}.site-nav{gap:8px 16px!important}.site-nav a{min-height:44px;display:inline-flex;align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-support,#analytics-controls,#jar-tools,#jar-confirm{display:none!important}}
