#sw-consent-banner,#sw-privacy-dialog,#sw-privacy-launcher{font-family:'Switzer','Satoshi',sans-serif;color:var(--brand-navy, #253C34);box-sizing:border-box}
#sw-consent-banner{position:fixed;z-index:120;bottom:0;left:0;right:0;background:#fff;border-top:2px solid #c7cdca;padding:20px clamp(20px,4vw,64px);display:flex;gap:32px;align-items:center;box-shadow:0 -4px 24px #253C3410}
#sw-consent-banner[hidden]{display:none}
.sw-consent-copy{flex:1;max-width:760px}
#sw-consent-banner h2,#sw-privacy-dialog h2{font-family:inherit;font-size:clamp(20px,2vw,24px);font-weight:700;line-height:1.25;letter-spacing:0;margin:0 0 8px}
#sw-consent-banner p,#sw-privacy-dialog p{font-family:inherit;font-size:16px;line-height:1.5;margin:0;max-width:none}
.sw-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex-shrink:0}
.sw-preview-notice{margin-top:8px!important;color:#684634;font-size:13px!important}
#sw-privacy-dialog [data-sw-block]{display:block;width:100%;margin-top:10px}
#sw-consent-banner button,#sw-privacy-dialog button{font:600 15px/1.3 'Switzer','Satoshi',sans-serif;min-height:46px;padding:12px 16px;border:1px solid #253C34;border-radius:3px;background:#fff;color:var(--brand-navy, #253C34);cursor:pointer}
#sw-consent-banner [data-sw-allow],#sw-consent-banner [data-sw-decline],#sw-privacy-dialog [data-sw-save]{background:#253C34;color:#fff}
#sw-consent-banner .sw-privacy-link{grid-column:1/-1;border:0;text-decoration:underline;min-height:32px;padding:4px;background:none;color:var(--brand-navy, #253C34)}
#sw-privacy-launcher{position:fixed;z-index:90;left:12px;bottom:105px;padding:8px 12px;min-height:40px;background:#fff;border:1px solid #253C34;border-radius:3px;font-size:13px;line-height:1.3;font-weight:600;box-shadow:0 2px 8px #253C3410}
.sw-consent-open #sw-privacy-launcher{visibility:hidden}
#sw-privacy-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:32px;border:1px solid #c7cdca;background:#fff;border-radius:6px;overflow:auto}
#sw-privacy-dialog::backdrop{background:#253C34d0}
#sw-privacy-dialog .sw-privacy-close{float:right;min-width:44px;padding:4px;margin:-16px -16px 4px 8px;border:0;font-size:26px;line-height:1}
#sw-privacy-dialog .sw-privacy-option{display:flex;gap:16px;align-items:flex-start;padding:20px 0;margin:16px 0;border-block:1px solid #dfe2e0;font-weight:400}
#sw-privacy-dialog input{appearance:auto;flex:0 0 22px;width:22px;height:22px;min-height:22px;margin:3px 0 0;accent-color:#253C34}
.sw-privacy-option strong,.sw-privacy-option span span{display:block}
.sw-privacy-option strong{font-size:17px;line-height:1.4;margin-bottom:8px}
.sw-privacy-option span span{font-size:15px;line-height:1.6;color:var(--brand-navy, #253C34)}
#sw-privacy-dialog .sw-privacy-note{font-size:14px;line-height:1.55;margin:12px 0;color:var(--brand-navy, #253C34)}
.sw-privacy-dialog-actions{display:flex;gap:12px;margin-top:24px}
.sw-gpc-notice{background:#f0f2f1;color:var(--brand-navy, #253C34);padding:12px;margin-top:12px!important}
.sw-gpc-notice[hidden]{display:none}
#sw-consent-banner button:focus-visible,#sw-privacy-dialog button:focus-visible,#sw-privacy-launcher:focus-visible{outline:3px solid #A6533C;outline-offset:3px}
@media(max-width:760px){
 #sw-consent-banner{display:block;padding:16px;max-height:80dvh;overflow:auto}
 #sw-consent-banner p{font-size:14px;line-height:1.5}
 .sw-consent-actions{margin-top:14px}
 #sw-consent-banner button{font-size:14px;padding:10px}
 #sw-privacy-launcher{bottom:96px;font-size:12px}
 #sw-privacy-dialog{padding:24px}
 .sw-privacy-dialog-actions{flex-direction:column;gap:8px}
}
.sw-policy-footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 24px;padding:20px 16px;border-top:1px solid #dce0dd;background:#fff;color:#253C34;font:13px/1.5 Switzer,system-ui,sans-serif}
.sw-policy-footer a,.sw-policy-footer button{font:inherit;color:inherit;text-decoration:underline;text-underline-offset:4px}
.sw-policy-footer button{border:0;background:none;cursor:pointer;min-height:44px;padding:0}
.legal-page #sw-privacy-launcher{position:static;display:block;margin:20px auto}
#sw-consent-banner h2,#sw-consent-banner p,#sw-privacy-dialog h2,#sw-privacy-dialog p{text-align:left}
#sw-consent-banner .sw-banner-policy{display:inline-block;margin-top:8px;color:#253C34;font-size:14px;text-decoration:underline;text-underline-offset:3px}
#sw-privacy-dialog{width:min(660px,calc(100% - 32px))}
#sw-privacy-dialog .sw-essential{display:flex;align-items:flex-start;gap:20px;padding:20px 0 16px;margin-top:8px}
#sw-privacy-dialog .sw-essential div{flex:1}
#sw-privacy-dialog .sw-essential strong,#sw-privacy-dialog .sw-essential div span{display:block;text-align:left}
#sw-privacy-dialog .sw-essential strong{font-size:17px;margin-bottom:6px}
#sw-privacy-dialog .sw-essential div span{font-size:15px;line-height:1.5}
#sw-privacy-dialog .sw-always-on{flex-shrink:0;font-size:12px;font-weight:600;line-height:1.4;padding:6px 8px;background:#edf2ef;border-radius:4px}
#sw-privacy-dialog .sw-privacy-option{margin:0;padding:18px 0;gap:20px;border-bottom:0;text-align:left;cursor:pointer;align-items:center}
#sw-privacy-dialog .sw-privacy-option:last-of-type{border-bottom:1px solid #dfe2e0}
#sw-privacy-dialog .sw-category-copy{flex:1;min-width:0}
#sw-privacy-dialog .sw-category-copy strong{margin-bottom:6px}
#sw-privacy-dialog .sw-category-copy>span{font-size:15px;line-height:1.5}
#sw-privacy-dialog .sw-switch{position:relative;display:block;flex:0 0 52px;width:52px;min-height:52px}
#sw-privacy-dialog .sw-switch input{position:absolute;z-index:1;inset:0;opacity:0;cursor:pointer;width:52px;height:52px;margin:0}
#sw-privacy-dialog .sw-switch-track{display:block;width:52px;height:30px;border-radius:20px;background:#707a75;border:1px solid #707a75;box-sizing:border-box}
#sw-privacy-dialog .sw-switch-track:after{content:'';display:block;width:22px;height:22px;margin:3px;border-radius:50%;background:white}
#sw-privacy-dialog .sw-switch input:checked+.sw-switch-track{background:#253C34;border-color:#253C34}
#sw-privacy-dialog .sw-switch input:checked+.sw-switch-track:after{transform:translateX(22px)}
#sw-privacy-dialog .sw-switch input:focus-visible+.sw-switch-track{outline:3px solid #A6533C;outline-offset:3px}
#sw-privacy-dialog .sw-switch input:disabled{cursor:not-allowed}
#sw-privacy-dialog .sw-switch input:disabled+.sw-switch-track{opacity:.6}
#sw-privacy-dialog .sw-switch-state{display:block;text-align:center;font-size:12px;line-height:1.4;margin-top:4px}
#sw-privacy-dialog .sw-switch-state:after{content:'Off'}
#sw-privacy-dialog input:checked~.sw-switch-state:after{content:'On'}
#sw-privacy-dialog .sw-privacy-note{font-size:13px;line-height:1.5}
#sw-privacy-dialog .sw-privacy-dialog-actions{margin-top:16px}
#sw-consent-banner button:disabled{background:#e5e9e7;color:#4b5851;border-color:#adb8b1;cursor:not-allowed}
body #sw-consent-banner button[data-sw-allow],body #sw-consent-banner button[data-sw-decline]{background:#253C34!important;color:#fff!important;font-size:15px!important;font-weight:600!important;padding:12px 16px!important;border:1px solid #253C34!important}
#sw-consent-banner .sw-consent-copy>p{font-size:16px!important;line-height:1.5!important}
#sw-privacy-dialog p.sw-privacy-note{font-size:13px!important;line-height:1.5!important}
#sw-privacy-dialog [data-sw-save]{background:#253C34!important;color:#fff!important;font-size:15px!important}
#sw-consent-banner [data-sw-allow]:disabled{background:#e5e9e7!important;color:#4b5851!important;border-color:#adb8b1!important}
@media(max-width:400px){
 #sw-privacy-dialog{padding:20px}
 #sw-privacy-dialog .sw-essential,#sw-privacy-dialog .sw-privacy-option{gap:12px}
 #sw-privacy-dialog .sw-privacy-close{margin:-8px -8px 0 4px}
}
/* Keep the controls visible; only explanations scroll inside the modal. */
body #sw-privacy-dialog{position:fixed;inset:auto 0 0;margin:0 auto;padding:0;width:min(660px,100%);max-width:100%;height:min(275px,calc(100dvh - 16px));max-height:calc(100dvh - 16px);overflow:hidden;border-radius:8px 8px 0 0}
body #sw-privacy-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
body #sw-privacy-dialog .sw-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 20px;border-bottom:1px solid #dfe2e0;background:#fff}
body #sw-privacy-dialog .sw-dialog-header h2{font-size:22px;margin:0}
body #sw-privacy-dialog .sw-privacy-close{float:none;position:static;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin:0;padding:0}
body #sw-privacy-dialog .sw-dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px 20px;scroll-padding-block:12px}
body #sw-privacy-dialog .sw-dialog-body:focus-visible{outline:2px solid #A6533C;outline-offset:-3px}
body #sw-privacy-dialog .sw-essential{padding:14px 0;margin:0;gap:12px}
body #sw-privacy-dialog .sw-essential strong,body #sw-privacy-dialog .sw-category-copy strong{font-size:16px;margin-bottom:4px}
body #sw-privacy-dialog .sw-essential div span,body #sw-privacy-dialog .sw-category-copy>span{font-size:14px;line-height:1.5}
body #sw-privacy-dialog .sw-privacy-option{padding:14px 0;gap:16px}
body #sw-privacy-dialog .sw-dialog-footer{background:#fff;border-top:1px solid #dfe2e0;padding:12px 20px max(12px,env(safe-area-inset-bottom))}
body #sw-privacy-dialog .sw-privacy-dialog-actions{display:grid;grid-template-columns:1fr;gap:8px;margin:0}
body #sw-privacy-dialog .sw-dialog-footer button{font:600 15px/1.3 'Switzer','Satoshi',sans-serif!important;min-height:46px;padding:10px 12px!important;margin:0!important;width:100%;letter-spacing:0}
body #sw-privacy-dialog .sw-dialog-footer [data-sw-block]{grid-column:1/-1}
body #sw-privacy-dialog .sw-more-information{border-top:1px solid #dfe2e0;margin-top:12px}
body #sw-privacy-dialog .sw-more-information summary{display:list-item;cursor:pointer;padding:12px 0;min-height:44px;font:600 15px/1.4 'Switzer','Satoshi',sans-serif}
body #sw-privacy-dialog .sw-more-information summary:focus-visible{outline:2px solid #A6533C;outline-offset:2px}
body #sw-privacy-dialog #sw-privacy-status:empty{display:none}
@media(max-width:600px){
 body #sw-privacy-dialog .sw-dialog-header{padding:8px 16px}
 body #sw-privacy-dialog .sw-dialog-header h2{font-size:20px}
 body #sw-privacy-dialog .sw-dialog-body{padding:14px 16px}
 body #sw-privacy-dialog .sw-dialog-footer{padding-inline:16px}
 body #sw-privacy-dialog .sw-privacy-dialog-actions{grid-template-columns:1fr}
}
@media(orientation:landscape) and (max-height:500px) and (min-width:601px){
 body #sw-privacy-dialog .sw-dialog-header{padding-block:4px}
 body #sw-privacy-dialog .sw-privacy-dialog-actions{grid-template-columns:1fr}
 body #sw-privacy-dialog .sw-dialog-footer [data-sw-block]{grid-column:auto}
}
#sw-consent-banner [data-sw-manage]{text-decoration:none;background:#fff;color:#253C34}
/* Compact bottom sheet: keep text readable rather than scaling the interface. */
body #sw-privacy-dialog .sw-dialog-header{padding:0 16px}
body #sw-privacy-dialog .sw-dialog-header h2{font-size:18px}
body #sw-privacy-dialog .sw-dialog-body{padding:4px 16px}
body #sw-privacy-dialog .sw-essential{padding:0 0 8px;align-items:center}
body #sw-privacy-dialog .sw-essential div span{display:none}
body #sw-privacy-dialog .sw-essential strong{margin:0}
body #sw-privacy-dialog .sw-privacy-option{padding:8px 0}
body #sw-privacy-dialog .sw-dialog-footer{padding:4px 16px max(4px,env(safe-area-inset-bottom))}
body #sw-privacy-dialog button,body #sw-privacy-dialog input{-webkit-tap-highlight-color:transparent}
