/* Shark Life Media consent component. Website palette, independent of funnel CSS. */
.slm-consent, .slm-consent * {box-sizing:border-box;border-radius:0!important;box-shadow:none!important;font-family:Inter,Arial,sans-serif;}
.slm-consent [hidden]{display:none!important;}
.slm-consent{--slm-ink:#00002b;--slm-paper:#fff;color:var(--slm-ink);font-size:15px;line-height:1.5;}
.slm-consent button,.slm-consent a{touch-action:manipulation;}
.slm-consent button{appearance:none;cursor:pointer;}
.slm-consent a{color:inherit;text-decoration:underline;text-underline-offset:4px;}
.slm-consent :focus-visible{outline:3px solid currentColor;outline-offset:4px;}
.slm-consent-banner{position:fixed;inset:auto 0 0;z-index:2147483000;background:#00002b;color:#fff;padding:28px max(24px,calc((100vw - 1280px)/2));border-top:1px solid #fff;max-height:85dvh;overflow:auto;}
.slm-consent-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center;}
.slm-consent .slm-consent-title{font:700 20px/1.2 Inter,Arial,sans-serif;letter-spacing:.02em;margin:0 0 10px;color:inherit;text-transform:uppercase;}
.slm-consent p{font:400 14px/1.6 Inter,Arial,sans-serif;color:inherit;margin:0 0 12px;max-width:760px;}
.slm-consent p:last-child{margin-bottom:0;}
.slm-consent-actions{display:flex;gap:12px;flex-wrap:wrap;}
.slm-consent-btn{font:700 13px/1.2 Inter,Arial,sans-serif!important;letter-spacing:1px;text-transform:uppercase;white-space:nowrap!important;padding:15px 20px!important;min-height:48px;border:1px solid currentColor!important;background:#fff!important;color:#00002b!important;flex:1 0 auto;}
.slm-consent-btn:hover{background:#00002b!important;color:#fff!important;}
.slm-consent-banner .slm-consent-btn:hover{border-color:#fff!important;}
.slm-consent .slm-consent-details{font-size:12px;opacity:1;}
.slm-consent dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 32px);border:1px solid #00002b;background:#fff;color:#00002b;overflow:auto;}
.slm-consent dialog::backdrop{background:rgba(0,0,43,.55);}
.slm-consent-modal-head{padding:28px 28px 20px;display:flex;gap:20px;justify-content:space-between;align-items:start;border-bottom:1px solid #dedee4;}
.slm-consent-modal-head .slm-consent-title{margin:0;}
.slm-consent-close{border:0;background:none;color:inherit;text-decoration:underline;padding:3px;font:600 13px/1.5 Inter,Arial,sans-serif;min-height:32px;white-space:nowrap;}
.slm-consent-modal-body{padding:24px 28px;}
.slm-consent-category{padding:20px 0;border-top:1px solid #dedee4;}
.slm-consent-category label,.slm-consent-category-heading{display:flex;gap:16px;align-items:center;justify-content:space-between;font-weight:700;font-size:15px;}
.slm-consent-category p{margin-top:8px;font-size:13px;}
.slm-consent input[type=checkbox]{appearance:none;width:24px;height:24px;flex:0 0 24px;margin:0;position:relative;border:1px solid #00002b;background:#fff;cursor:pointer;}
.slm-consent input[type=checkbox]:checked{background:#00002b;}
.slm-consent input[type=checkbox]:checked::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:700 18px/1 Arial,sans-serif;}
.slm-consent input:disabled{cursor:not-allowed;}
.slm-consent .slm-consent-status{font:600 12px/1.4 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;}
.slm-consent-modal-foot{padding:20px 28px 28px;border-top:1px solid #dedee4;}
.slm-consent-modal-foot .slm-consent-btn{font-size:12px!important;padding:15px 12px!important;}
.slm-consent-save{margin-top:12px;width:100%;}
.slm-consent-footer-link{appearance:none;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px;padding:6px 0;cursor:pointer;}
@media(max-width:1100px){.slm-consent-inner{grid-template-columns:1fr;gap:20px}.slm-consent-actions{max-width:640px;}}
@media(max-width:480px){.slm-consent-banner{padding:22px 20px}.slm-consent .slm-consent-title{font-size:18px}.slm-consent-banner .slm-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.slm-consent-banner [data-slm-choice=preferences]{grid-column:1/-1}.slm-consent-btn{font-size:12px!important;padding:14px 12px!important}.slm-consent-modal-head,.slm-consent-modal-body,.slm-consent-modal-foot{padding:20px}.slm-consent-modal-foot .slm-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}}
@media(prefers-reduced-motion:reduce){.slm-consent *{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* Compact banner: outlined secondary actions, filled acceptance. */
.slm-consent-banner{padding:16px max(24px,calc((100vw - 1280px)/2));}
.slm-consent-banner .slm-consent-inner{gap:12px 28px;}
.slm-consent-banner .slm-consent-title{font-size:16px;margin-bottom:6px;}
.slm-consent-banner p{font-size:13px;line-height:1.45;margin-bottom:6px;}
.slm-consent-banner .slm-consent-details{font-size:11px;}
.slm-consent-banner .slm-consent-actions{gap:10px;}
.slm-consent-banner .slm-consent-btn{min-height:44px;padding:11px 16px!important;font-size:12px!important;}
.slm-consent-banner [data-slm-choice=reject],
.slm-consent-banner [data-slm-choice=preferences]{background:transparent!important;color:#fff!important;border-color:#fff!important;text-decoration:none;}
.slm-consent-banner [data-slm-choice=reject]:hover,
.slm-consent-banner [data-slm-choice=preferences]:hover{background:#fff!important;color:#00002b!important;border-color:#fff!important;text-decoration:none;}
.slm-consent-banner [data-slm-choice=preferences]{order:0;}
.slm-consent-banner [data-slm-choice=reject]{order:1;}
.slm-consent-banner [data-slm-choice=accept]{order:2;}
@media(max-width:480px){.slm-consent-banner{padding:14px 16px}.slm-consent-banner .slm-consent-actions{display:flex;flex-wrap:nowrap;gap:7px}.slm-consent-banner .slm-consent-btn{padding:10px 7px!important;font-size:10px!important;letter-spacing:.5px;flex:1 1 auto}.slm-consent-banner [data-slm-choice=preferences],.slm-consent-banner [data-slm-choice=accept]{grid-column:auto}}

/* Softer banner copy, retaining readable contrast on navy. */
.slm-consent-banner p,.slm-consent-banner .slm-consent-details{color:#c0c0c0;}

/* Larger action labels without wrapping. */
.slm-consent-banner .slm-consent-btn{font-size:14px!important;}
@media(max-width:480px){.slm-consent-banner .slm-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.slm-consent-banner .slm-consent-btn{font-size:13px!important;padding:11px 10px!important}.slm-consent-banner [data-slm-choice=accept]{grid-column:1/-1}}

/* Consent typography: quieter secondary actions and supporting copy. */
.slm-consent-banner [data-slm-choice=preferences],.slm-consent-banner [data-slm-choice=reject]{font-weight:400!important;}
.slm-consent-banner p,.slm-consent-banner .slm-consent-details{font-weight:300;}

/* Muted supporting copy on the navy consent banner. */
.slm-consent-banner p,.slm-consent-banner .slm-consent-details{color:#999999;}
/* Site integration, independent of the floating legacy chat widget. */
iframe[data-slm-consent][hidden],.slm-embed-placeholder[hidden]{display:none!important;}
.slm-privacy-footer{background:#00002b;color:#fff;padding:12px 24px;text-align:center;}
.slm-privacy-footer button{font:400 13px/1.5 Inter,Arial,sans-serif;color:#fff;background:none;border:0;border-radius:0;padding:10px;min-height:44px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;}
.slm-embed-placeholder{padding:24px;border:1px solid #c0c0c0;background:#fff;color:#00002b;font:400 15px/1.5 Inter,Arial,sans-serif;}
.slm-embed-placeholder p{color:#00002b!important;font:inherit!important;}
.slm-embed-placeholder button{background:#00002b;color:#fff;border:1px solid #00002b;border-radius:0;min-height:44px;padding:12px 16px;font:600 14px/1.3 Inter,Arial,sans-serif;cursor:pointer;}
.slm-embed-placeholder a{display:block;color:#00002b;text-decoration:underline;margin-top:12px;font:400 13px/1.5 Inter,Arial,sans-serif;}
.slm-privacy-footer button:focus-visible,.slm-embed-placeholder button:focus-visible{outline:2px solid currentColor;outline-offset:4px;}
/* Neutralize Divi paragraph padding so the approved compact height is retained. */
.slm-consent-banner p,.slm-consent-banner .slm-consent-title{padding:0!important;}
