/* Theme additions that the original stylesheets did not need (WordPress and accessibility). */
[hidden]{display:none!important}
.skip-link{position:absolute;left:8px;top:-60px;z-index:200;padding:12px 16px;border-radius:8px;background:var(--orange);color:var(--button-ink);font-weight:600}
.skip-link:focus{top:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mobile-toggle .il-when-open,.mobile-nav-group button .il-when-open{display:none}
.mobile-toggle[aria-expanded=true] .il-when-open,.mobile-nav-group button[aria-expanded=true] .il-when-open{display:inline-flex}
.mobile-toggle[aria-expanded=true] .il-when-closed,.mobile-nav-group button[aria-expanded=true] .il-when-closed{display:none}
.mobile-toggle span{display:inline-flex}
/* Contact Form 7 wrappers inherit the original form layout. */
.wpcf7-form-control-wrap{display:block}
.wpcf7 .wpcf7-not-valid-tip,.wpcf7-spinner{display:none}
.wpcf7-response-output{margin:12px 0 0;font-size:13px}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{color:#e6a396}
.wpcf7 form.sent .wpcf7-response-output{color:var(--mineral)}
/* Default page template (legal pages and other plain pages). */
.il-plain-page h1{font-size:clamp(40px,5vw,64px);font-weight:500;line-height:1.05;letter-spacing:-.04em}
.il-prose{max-width:760px;color:var(--muted);font-size:17px;line-height:1.7}
.il-prose h2,.il-prose h3{color:var(--cloud);font-weight:500;margin:40px 0 12px}
.il-prose a{color:var(--orange)}
/* WordPress prints width/height on images (prevents layout shift); keep them fluid like the original. */
img{max-width:100%;height:auto}
.blog-hero>*,.blog-read>*{min-width:0}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.wpcf7-response-output:empty{display:none}
.wpcf7 .hidden-fields-container{display:none}
.wpcf7 .screen-reader-response{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}
/* Images that fill their frame (the original used fill-mode images here). */
img.il-fill{position:absolute;inset:0;width:100%;height:100%}
/* Outcome explorer pause/play label follows the button state. */
.dm-autoplay[aria-pressed=false] .il-when-paused,.dm-autoplay[aria-pressed=true] .il-when-playing{display:none}
.dm-autoplay span{display:inline-flex;align-items:center;gap:8px}
.il-prose p,.il-prose ul,.il-prose ol{margin:0 0 16px}
.il-prose ul,.il-prose ol{padding-left:22px}
.il-prose li{margin-bottom:6px}
.il-prose h2{font-size:24px;letter-spacing:-.02em}
