/* Inherit FVF's existing typeface; no remote fonts or theme-wide selectors. */
#fvf-consent-footer { display:flex;justify-content:center;flex-wrap:wrap;gap:.25rem 1.25rem;padding:.35rem 1.25rem 1rem;background:#f1f3ee;color:#3a3a3a;font:inherit;font-size:.8125rem; }
#fvf-consent-footer button { display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.5rem;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer; }
#fvf-consent-footer button:hover { color:#176760; }
#fvf-consent-footer img { flex:0 0 auto; }
#fvf-consent-footer [hidden],.fvf-consent-panel [hidden] { display:none!important; }
.fvf-consent-panel { box-sizing:border-box;width:min(39rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;overscroll-behavior:contain;margin:auto;padding:2rem;border:1px solid #d6ddd4;border-top:4px solid #258079;border-radius:4px;background:#fff;color:#3a3a3a;font-family:inherit;font-size:1rem;line-height:1.6;box-shadow:0 12px 48px #0003; }
.fvf-consent-panel::backdrop { background:#172b27a6; }
.fvf-consent-panel h2 { margin:0 0 .75rem;font-family:inherit;font-weight:700;font-size:1.6rem;line-height:1.3;color:#333; }
.fvf-consent-panel h3 { margin:1rem 0 .25rem;font-size:1rem;line-height:1.4;color:#333; }
.fvf-consent-panel p { margin:.75rem 0; }
.fvf-consent-panel button { box-sizing:border-box;min-height:46px;padding:.75rem 1rem;border:2px solid #20756e;border-radius:3px;background:#20756e;color:#fff;font:inherit;font-weight:600;line-height:1.4;cursor:pointer; }
.fvf-consent-panel button:hover { background:#195e58;border-color:#195e58; }
.fvf-consent-panel .fvf-consent-actions { display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem; }
.fvf-consent-panel .fvf-consent-actions button { flex:1;min-width:8rem; }
.fvf-consent-panel button.fvf-consent-secondary { background:#fff;color:#176760; }
.fvf-consent-panel button.fvf-consent-secondary:hover { background:#f1f3ee; }
.fvf-consent-panel button.fvf-consent-dismiss { display:block;margin:.8rem auto 0;padding:.4rem .6rem;border-color:transparent;background:transparent;color:#555;font-size:.875rem;font-weight:400;text-decoration:underline;text-underline-offset:.2em; }
.fvf-consent-panel label { display:flex;align-items:center;gap:.875rem;padding:1rem 0;border-bottom:1px solid #d6ddd4;cursor:pointer; }
.fvf-consent-panel input[type=checkbox] { flex:0 0 auto;width:1.25rem;height:1.25rem;margin:0;accent-color:#20756e; }
.fvf-consent-panel input:disabled { opacity:.6; }
.fvf-consent-panel summary { padding:1rem 0;color:#176760;text-decoration:underline;text-underline-offset:.2em;cursor:pointer; }
.fvf-consent-panel .fvf-consent-service { padding:.35rem 0;border-top:1px solid #d6ddd4;font-size:.875rem;overflow-wrap:anywhere; }
.fvf-consent-panel .fvf-consent-policy { font-size:.875rem; }
.fvf-consent-panel a { color:#176760;text-decoration:underline;text-underline-offset:.2em; }
.fvf-consent-panel :focus-visible,#fvf-consent-footer :focus-visible { outline:3px solid #1766bd;outline-offset:3px; }
#fvf-consent-gpc { padding:.75rem 1rem;border-left:3px solid #20756e;background:#f1f3ee; }
#fvf-consent-status:not(:empty) { padding:.75rem 1rem;border-left:3px solid #a33120;background:#fcf4f1; }
.fvf-consent-panel button:disabled { opacity:.6;cursor:wait; }
@media(max-width:480px) { .fvf-consent-panel { width:calc(100vw - 1.25rem);max-height:calc(100dvh - 1.25rem);padding:1.25rem; } .fvf-consent-panel .fvf-consent-actions { flex-direction:column; } .fvf-consent-panel h2 { font-size:1.375rem; } #fvf-consent-footer { gap:0; } }
@media(forced-colors:active) { .fvf-consent-panel { border:2px solid CanvasText; } }

.fvf-consent-panel .fvf-age-exit { display:flex;align-items:center;justify-content:center;flex:1;min-height:46px;box-sizing:border-box;padding:.75rem 1rem;border:2px solid #20756e;border-radius:3px;background:#fff;color:#176760;font-weight:600;text-decoration:none; }
.fvf-consent-panel .fvf-age-exit:hover { background:#f1f3ee; }
#fvf-age-status:not(:empty) { padding:.75rem 1rem;border-left:3px solid #a33120;background:#fcf4f1; }
