/* ==========================================================================
   Edson Legal 2026: upgrade layer over the 2015 theme.
   Same identity (navy / crimson / mustard, Raleway), modern execution.
   Loaded after the parent stylesheet. Every new class is prefixed e26-.
   ========================================================================== */

:root {
	--e-navy: #23395f;
	--e-navy-deep: #1a2c4b;
	--e-navy-ink: #111d33;
	--e-crimson: #ab1b48;
	--e-crimson-deep: #8f143b;
	--e-mustard: #ebbf4a;
	--e-mustard-deep: #d6a72c;
	--e-strip: #e7e5e5;
	--e-paper: #f3f3f2;
	--e-ink: #1b2333;
	--e-ink-2: #465166;
	--e-line: #d9dde4;
	--e-head: "Raleway", "Helvetica Neue", Arial, sans-serif;
	--e-body: "Open Sans", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
	--e-wrap: 1200px;
	--e-gutter: clamp(16px, 4vw, 32px);
	--e-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Base ---------- */
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 120px; }
body.e26 { font-family: var(--e-body); color: var(--e-ink); background: #fff; -webkit-font-smoothing: antialiased; }
.e26 h1, .e26 h2, .e26 h3, .e26 h4 { font-family: var(--e-head); letter-spacing: -.005em; }
.e26 p { line-height: 1.65; }
.e26 img { max-width: 100%; height: auto; }
.e26 :focus-visible { outline: 3px solid var(--e-mustard); outline-offset: 2px; }
.e26 a { text-underline-offset: .18em; }

.e26-skip {
	position: absolute; left: 12px; top: -60px; z-index: 10001;
	background: var(--e-mustard); color: var(--e-navy-ink); font: 700 15px/1 var(--e-head);
	padding: 14px 18px; text-decoration: none; transition: top .2s var(--e-ease);
}
.e26-skip:focus { top: 12px; }

/* The preloader plugin's overlay is gone from the markup; make sure its CSS can't cover the page. */
#wptime-plugin-preloader { display: none !important; }

/* ---------- Buttons ---------- */
.e26-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 52px; padding: 0 26px; font: 700 16px/1.2 var(--e-head); letter-spacing: .01em;
	text-decoration: none; border: 2px solid transparent; transition: background-color .2s var(--e-ease), color .2s var(--e-ease), border-color .2s var(--e-ease), transform .2s var(--e-ease);
}
.e26-btn:hover { transform: translateY(-1px); }
.e26-btn--mustard { background: var(--e-mustard); color: var(--e-navy-ink); }
.e26-btn--mustard:hover { background: #fff; color: var(--e-navy-ink); }
.e26-btn--line { border-color: rgba(255,255,255,.55); color: #fff; }
.e26-btn--line:hover { border-color: var(--e-mustard); color: var(--e-mustard); }

/* Old site buttons ("Start Your Claim", "Read Our Blog", "View All Testimonials") */
.e26 .su-button, .e26 a.btn, .e26 .btn-yellow, .e26 .rpwe-more, .e26 .home-feat-testi a.button {
	transition: background-color .2s var(--e-ease), color .2s var(--e-ease), transform .2s var(--e-ease);
}

/* ==========================================================================
   Header: navy logo block, angled mustard band, grey nav strip
   ========================================================================== */
.e26-header,
.e26-header.site-header {
	position: sticky; top: 0; z-index: 1000; height: auto !important;
	background: var(--e-navy) !important; /* the parent prints Twenty Thirteen's header image inline */
	background-image: none !important;
	box-shadow: 0 1px 0 rgba(0,0,0,.08), 0 6px 18px -10px rgba(17,29,51,.45);
}
.admin-bar .e26-header { top: 32px; }
.e26-header__inner {
	display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: stretch;
	padding-left: max(var(--e-gutter), calc((100vw - var(--e-wrap)) / 2));
}
.e26-logo { display: flex; align-items: center; padding: 16px 40px 16px 0; }
.e26-logo img { display: block; width: 252px; height: auto; }

.e26-header__right {
	display: grid; grid-template-rows: auto auto;
	clip-path: polygon(44px 0, 100% 0, 100% 100%, 0 100%);
	background: var(--e-strip);
}
.e26-band {
	display: flex; align-items: center; gap: clamp(20px, 4vw, 56px);
	min-height: 62px; padding: 6px max(var(--e-gutter), calc((100vw - var(--e-wrap)) / 2)) 6px 76px;
	background: var(--e-mustard);
}
.e26-band__cta, .e26-band__phone {
	display: inline-flex; align-items: center; gap: 10px; color: var(--e-navy-ink); text-decoration: none;
	font: 800 17px/1.1 var(--e-head); letter-spacing: .02em;
}
.e26-band__cta { text-transform: uppercase; position: relative; padding: 6px 0; }
.e26-band__cta::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--e-navy);
	transform: scaleX(0); transform-origin: left; transition: transform .25s var(--e-ease);
}
.e26-band__cta:hover::after, .e26-band__cta:focus-visible::after { transform: scaleX(1); }
.e26-band__phone { font-size: 19px; }
.e26-band__phone svg { flex: none; }
.e26-band__phone:hover { color: var(--e-crimson); }

.e26-nav { margin: 0 !important; padding: 0 max(var(--e-gutter), calc((100vw - var(--e-wrap)) / 2)) 0 56px !important; background: transparent !important; min-height: 50px; display: flex; align-items: center; }
.e26-nav .menu-toggle { display: none; }
.e26-nav.main-navigation::before,
.e26-nav.main-navigation::after { display: none !important; } /* parent's skewed grey slabs */
/* UberMenu top level */
.e26-nav .ubermenu,
.e26-nav .ubermenu-main { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.e26-nav .ubermenu .ubermenu-item-level-0 > .ubermenu-target {
	font: 700 14px/1 var(--e-head) !important; letter-spacing: .05em !important; text-transform: uppercase;
	color: var(--e-navy-ink) !important; padding: 18px 14px !important; background: transparent !important;
	position: relative; transition: color .2s var(--e-ease);
}
.e26-nav .ubermenu .ubermenu-item-level-0 > .ubermenu-target::after {
	content: ""; position: absolute; left: 14px; right: 14px; bottom: 9px; height: 3px; background: var(--e-crimson);
	transform: scaleX(0); transform-origin: left; transition: transform .25s var(--e-ease);
}
.e26-nav .ubermenu .ubermenu-item-level-0:hover > .ubermenu-target,
.e26-nav .ubermenu .ubermenu-item-level-0.ubermenu-active > .ubermenu-target,
.e26-nav .ubermenu .ubermenu-current-menu-item > .ubermenu-target,
.e26-nav .ubermenu .ubermenu-current-menu-ancestor > .ubermenu-target { color: var(--e-crimson) !important; }
.e26-nav .ubermenu .ubermenu-item-level-0:hover > .ubermenu-target::after,
.e26-nav .ubermenu .ubermenu-current-menu-item > .ubermenu-target::after,
.e26-nav .ubermenu .ubermenu-current-menu-ancestor > .ubermenu-target::after { transform: scaleX(1); }
/* Dropdowns */
.e26-nav .ubermenu .ubermenu-submenu {
	background: #fff !important; border: 0 !important; border-top: 3px solid var(--e-mustard) !important;
	box-shadow: 0 18px 40px -18px rgba(17,29,51,.45) !important;
}
.e26-nav .ubermenu .ubermenu-submenu .ubermenu-target {
	font: 600 15px/1.3 var(--e-body) !important; color: var(--e-ink) !important; padding: 11px 18px !important; text-transform: none !important; letter-spacing: 0 !important;
}
.e26-nav .ubermenu .ubermenu-submenu .ubermenu-target:hover { color: var(--e-crimson) !important; background: var(--e-paper) !important; }
.e26-nav .ubermenu .ubermenu-submenu img.ubermenu-image { width: 22px !important; height: 22px !important; }

/* ==========================================================================
   Hero: the four B&W slides with the 1982 seal, captions as real text
   ========================================================================== */
.e26-hero { background: var(--e-navy-ink); }
.e26-hero__stage { position: relative; max-width: var(--e-wrap); margin: 0 auto; }
.e26-slide {
	position: absolute; top: 0; left: 0; width: 100%; display: block; color: #fff; text-decoration: none;
	opacity: 0; visibility: hidden; transition: opacity .9s var(--e-ease), visibility 0s linear .9s;
}
.e26-slide.is-active { position: relative; opacity: 1; visibility: visible; z-index: 1; transition: opacity .9s var(--e-ease), visibility 0s; }
/* The JPGs carry their old caption bar from y=363 down (measured on all four): crop it, set the caption as text. */
.e26-slide__img { display: block; aspect-ratio: 1200 / 362; overflow: hidden; background: #0b0b0b; }
.e26-slide__img img { display: block; width: 100%; height: auto; }
.e26-slide__cap {
	display: flex; align-items: center; justify-content: space-between; gap: 18px;
	padding: 18px clamp(18px, 3vw, 32px); background: #0b0f17; color: #fff;
	font: 700 clamp(16px, 1.7vw, 22px)/1.3 var(--e-head);
}
.e26-slide__cap svg { flex: none; color: var(--e-mustard); transition: transform .25s var(--e-ease); }
.e26-slide:hover .e26-slide__cap svg, .e26-slide:focus-visible .e26-slide__cap svg { transform: translateX(4px); }
.e26-slide:hover .e26-slide__cap span { text-decoration: underline; text-decoration-color: var(--e-mustard); text-decoration-thickness: 2px; }
.e26-hero__dots { position: absolute; z-index: 2; top: 16px; right: 16px; display: flex; gap: 8px; }
.e26-dot {
	width: 28px; height: 28px; padding: 0; border: 0; background: transparent; cursor: pointer; position: relative;
}
.e26-dot::before {
	content: ""; position: absolute; left: 4px; right: 4px; top: 12px; height: 4px; background: rgba(255,255,255,.45); transition: background-color .2s;
}
.e26-dot.is-active::before, .e26-dot:hover::before { background: var(--e-mustard); }

/* ==========================================================================
   Request a free consultation bar (CF7 #1014)
   ========================================================================== */
#request-form.e26-request { background: var(--e-navy); padding: clamp(18px, 3vw, 28px) var(--e-gutter); }
#request-form .form-header { font: 700 clamp(22px, 2.2vw, 28px)/1.15 var(--e-head); }
#request-form .form-header span { color: var(--e-mustard); text-transform: none; }
#request-form .wpcf7 input[type="text"],
#request-form .wpcf7 input[type="email"],
#request-form .wpcf7 input[type="tel"],
#request-form .wpcf7 textarea {
	font: 400 16px/1.3 var(--e-body); min-height: 48px; padding: 12px 14px; border: 2px solid transparent; border-radius: 2px;
	background: #fff; color: var(--e-ink); box-shadow: none; transition: border-color .2s;
}
#request-form .wpcf7 textarea { max-height: 48px; resize: none; }
#request-form .wpcf7 input:focus, #request-form .wpcf7 textarea:focus { border-color: var(--e-mustard); outline: none; }
#request-form .wpcf7 input[type="submit"] {
	min-height: 48px; font: 700 16px/1 var(--e-head) !important; letter-spacing: .04em; text-transform: uppercase;
	background: var(--e-crimson); color: #fff; border: 0; border-radius: 2px; cursor: pointer;
}
#request-form .wpcf7 input[type="submit"]:hover { background: var(--e-mustard); color: var(--e-navy-ink); }
#request-form .wpcf7-not-valid-tip { font-size: 13px; color: #ffd27a; }

/* ==========================================================================
   H1 band (crimson)
   ========================================================================== */
.e26 .cta-heading { background: var(--e-crimson); background-image: none; padding: clamp(18px, 2.4vw, 26px) var(--e-gutter); }
.e26 .cta-heading .heading-text { font: 700 clamp(22px, 2.5vw, 32px)/1.2 var(--e-head); color: #fff; letter-spacing: -.01em; }

/* ==========================================================================
   Police brutality: Charter lens
   ========================================================================== */
.e26-charter { background: var(--e-navy); color: #fff; border-top: 4px solid var(--e-mustard); }
.e26-charter__inner {
	max-width: var(--e-wrap); margin: 0 auto; padding: clamp(48px, 6vw, 84px) var(--e-gutter);
	display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(28px, 5vw, 72px); align-items: center;
}
.e26-eyebrow { margin: 0 0 14px; font: 800 13px/1 var(--e-head); letter-spacing: .14em; text-transform: uppercase; color: var(--e-mustard); }
.e26-charter__title { margin: 0 0 18px; font: 800 clamp(30px, 3.6vw, 46px)/1.08 var(--e-head); color: #fff; letter-spacing: -.015em; }
.e26-charter__lede { margin: 0 0 28px; font-size: 18px; color: rgba(255,255,255,.86); max-width: 34em; }
.e26-charter__actions { display: flex; flex-wrap: wrap; gap: 12px; }

.e26-lens {
	position: relative; margin: 0; padding: 30px 30px 64px; overflow: hidden;
	background: var(--e-navy-deep); border: 1px solid rgba(235,191,74,.35);
	--lx: 50%; --ly: 42%; --lr: 132px;
}
.e26-lens__text p, .e26-lens__glass p { margin: 0 0 14px; font: 400 16px/1.7 var(--e-body); }
.e26-lens__text b, .e26-lens__glass b { font: 800 13px/1 var(--e-head); letter-spacing: .06em; color: var(--e-mustard); margin-right: 6px; }
.e26-lens__text { color: rgba(255,255,255,.9); }
.e26-lens__glass, .e26-lens__ring { display: none; }
.e26-lens__cap {
	position: absolute; left: 30px; right: 30px; bottom: 20px; display: flex; justify-content: space-between; gap: 12px;
	font: 700 12px/1 var(--e-head); letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.62);
}
.e26-lens__hint { display: none; color: var(--e-mustard); }

/* Pointer devices: the text rests dim, the lens brings it into focus. */
.e26-lens.is-live { cursor: none; }
.e26-lens.is-live .e26-lens__text { color: rgba(255,255,255,.26); filter: blur(1.1px); }
.e26-lens.is-live .e26-lens__text b { color: rgba(235,191,74,.4); }
.e26-lens.is-live .e26-lens__glass {
	display: block; position: absolute; inset: 0; padding: 30px 30px 64px; color: #fff; background: var(--e-navy-ink);
	clip-path: circle(var(--lr) at var(--lx) var(--ly));
}
.e26-lens.is-live .e26-lens__ring {
	display: block; position: absolute; left: 0; top: 0; width: calc(var(--lr) * 2); height: calc(var(--lr) * 2);
	border: 2px solid var(--e-mustard); border-radius: 50%; pointer-events: none;
	transform: translate(calc(var(--lx) - var(--lr)), calc(var(--ly) - var(--lr)));
	box-shadow: 0 0 0 6px rgba(235,191,74,.12);
}
.e26-lens.is-live .e26-lens__hint { display: inline; }
.e26-lens.is-reading .e26-lens__hint { opacity: 0; transition: opacity .3s; }

/* ==========================================================================
   Home content (existing widgets), upgraded in place
   ========================================================================== */
.e26 .home-content h2, .e26 .home-content h1 { color: var(--e-navy); font-weight: 700; letter-spacing: -.01em; }
.e26 .home-content p { font-size: 17px; color: var(--e-ink-2); text-align: left; }
.e26 #secondary .widget-title, .e26 .widget_nav_menu .widget-title { letter-spacing: .02em; }

/* Practice-area tabs (Shortcodes Ultimate): keep mustard tabs + navy active */
.e26 .focus .widget-title { font: 600 clamp(24px, 2.6vw, 32px)/1.2 var(--e-head); color: var(--e-navy); }
.e26 .su-tabs-nav span {
	font-family: var(--e-head) !important; font-weight: 700 !important; transition: background-color .2s var(--e-ease), color .2s var(--e-ease), padding-left .2s var(--e-ease);
	cursor: pointer;
}
.e26 .su-tabs-nav span:hover { padding-left: 26px !important; }
.e26 .su-tabs-pane h2, .e26 .su-tabs-pane h3 { color: var(--e-navy); font-weight: 700; font-size: clamp(22px, 2vw, 28px); }
.e26 .su-tabs-pane, .e26 .su-tabs-pane p { font-size: 16px !important; line-height: 1.65 !important; color: var(--e-ink-2); }
.e26 .su-tabs-nav span { font-size: 16px !important; line-height: 1.25 !important; height: auto !important; }
@media (max-width: 767px) {
	.e26 .su-tabs-nav span { font-size: 15px !important; white-space: normal !important; }
}

/* Why choose us */
.e26 .why-us .service-box { transition: transform .25s var(--e-ease); }
.e26 .why-us .service-box:hover { transform: translateY(-2px); }
.e26 .why-us .service-box, .e26 .why-us .service-box p { font-size: 16px !important; line-height: 1.6 !important; color: var(--e-ink); }
.e26 .why-us h2, .e26 .additional_content h2 { font: 700 clamp(26px, 2.6vw, 34px)/1.2 var(--e-head); color: var(--e-navy-ink); }

/* Testimonials / experts slider */
.e26 #content-slides h2 { font: 800 clamp(24px, 2.4vw, 30px)/1.2 var(--e-head); }
.e26 #content-slides h4 { font: 700 clamp(19px, 1.8vw, 24px)/1.3 var(--e-head); color: var(--e-navy); }
.e26 #content-slides p, .e26 #content-slides li { font-size: 16px !important; line-height: 1.6; }

/* Associations: calm greys that wake up on hover */
.e26 .associations h2 { font: 800 22px/1 var(--e-head); letter-spacing: .06em; }
.e26 .associations .slick-slide img { filter: grayscale(1); opacity: .78; transition: filter .3s, opacity .3s; }
.e26 .associations .slick-slide:hover img { filter: none; opacity: 1; }

/* Chess sections */
.e26 .accord h2, .e26 .accord h3 { color: var(--e-crimson); font-weight: 700; letter-spacing: -.01em; }
.e26 .accord p, .e26 .accord li { font-size: 16px !important; line-height: 1.65 !important; }
.e26 .accord h2 { font-size: clamp(24px, 2.4vw, 32px) !important; }
.e26 .accord img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* Learning Center */
.e26 .blogs .rpwe-block img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; height: auto; }
.e26 .blogs .rpwe-title a { font-family: var(--e-head); font-weight: 600; color: var(--e-navy); text-decoration: none; }
.e26 .blogs .rpwe-title a:hover { color: var(--e-crimson); text-decoration: underline; }
.e26 .blogs .rpwe-title { font-size: 19px !important; line-height: 1.3 !important; }
.e26 .blogs .rpwe-summary { font-size: 15px !important; line-height: 1.6 !important; color: var(--e-ink-2); }

/* Book a consultation block */
.e26 .cta-form-wrapper input, .e26 .cta-form-wrapper select, .e26 .cta-form-wrapper textarea { font-size: 16px; }

/* Map: the embed is there; give it a height so it renders */
.e26 .home-map iframe { display: block; width: 100%; height: 380px; border: 0; }

/* ==========================================================================
   Icons: the five Font Awesome 4 icons the widgets use, as SVG masks.
   Three icon-font versions (FA4, FA 5.5 in UberMenu, FA 5.8 in the chat widget)
   fight over the same names; a mask needs no font and follows the text colour.
   ========================================================================== */
.e26 .fa.fa-youtube, .e26 .fa.fa-facebook, .e26 .fa.fa-twitter, .e26 .fa.fa-phone, .e26 .fa.fa-map-marker {
	display: inline-block; width: 1.2em; height: 1.2em; vertical-align: -.2em; font-size: inherit;
	background-color: currentColor; -webkit-mask: var(--e26-icon) center / contain no-repeat; mask: var(--e26-icon) center / contain no-repeat;
}
.e26 .fa.fa-youtube::before, .e26 .fa.fa-facebook::before, .e26 .fa.fa-twitter::before, .e26 .fa.fa-phone::before, .e26 .fa.fa-map-marker::before { content: none !important; }
.e26 .fa.fa-youtube { --e26-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.5 6.2a3 3 0 0 0-2.1-2.1C19.5 3.6 12 3.6 12 3.6s-7.5 0-9.4.5A3 3 0 0 0 .5 6.2 31.6 31.6 0 0 0 0 12a31.6 31.6 0 0 0 .5 5.8 3 3 0 0 0 2.1 2.1c1.9.5 9.4.5 9.4.5s7.5 0 9.4-.5a3 3 0 0 0 2.1-2.1A31.6 31.6 0 0 0 24 12a31.6 31.6 0 0 0-.5-5.8zM9.6 15.6V8.4l6.3 3.6-6.3 3.6z'/%3E%3C/svg%3E"); }
.e26 .fa.fa-facebook { --e26-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M24 12.07C24 5.4 18.63 0 12 0S0 5.4 0 12.07C0 18.1 4.39 23.1 10.13 24v-8.44H7.08v-3.49h3.05V9.41c0-3.02 1.79-4.69 4.53-4.69 1.31 0 2.68.24 2.68.24v2.97h-1.51c-1.49 0-1.96.93-1.96 1.89v2.26h3.33l-.53 3.49h-2.8V24C19.61 23.1 24 18.1 24 12.07z'/%3E%3C/svg%3E"); }
.e26 .fa.fa-twitter { --e26-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 1.2h3.7l-8 9.2L24 22.8h-7.4l-5.8-7.6-6.6 7.6H.5l8.6-9.8L0 1.2h7.6l5.2 6.9 6.1-6.9zm-1.3 19.4h2L6.5 3.2H4.3l13.3 17.4z'/%3E%3C/svg%3E"); }
.e26 .fa.fa-phone { --e26-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E"); }
.e26 .fa.fa-map-marker { --e26-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.6'/%3E%3C/svg%3E"); }

/* "Let's Talk" box: the old design is a white icon on a mustard tile. Tile on the element, icon on ::after. */
.e26 .cta-form-wrapper .fa.fa-phone, .e26 .cta-form-wrapper .fa.fa-map-marker {
	position: relative; -webkit-mask: none; mask: none; background-color: var(--e-mustard);
}
.e26 .cta-form-wrapper .fa.fa-phone::after, .e26 .cta-form-wrapper .fa.fa-map-marker::after {
	content: ""; position: absolute; inset: 24%; background-color: #fff;
	-webkit-mask: var(--e26-icon) center / contain no-repeat; mask: var(--e26-icon) center / contain no-repeat;
}

/* ==========================================================================
   Footer
   ========================================================================== */
.e26 #text-18 .widget-title { display: none; } /* same heading as #text-9, printed twice */
.e26 .site-footer { font-family: var(--e-body); }
.e26 .site-footer .widget-title { font-family: var(--e-head); font-weight: 700; }
.e26 .site-footer a:hover { color: var(--e-mustard); }
.e26 .copyright { font-size: 14px; }

/* ==========================================================================
   Chat bubble (ar-contactus): keep it out of the form on phones
   ========================================================================== */
#arcontactus { transition: opacity .25s var(--e-ease), transform .25s var(--e-ease); }
.e26-form-in-view #arcontactus .arcontactus-prompt, .e26-form-in-view #arcontactus .arcontactus-message { opacity: 0 !important; pointer-events: none !important; }
@media (max-width: 767px) {
	.e26-form-in-view #arcontactus { opacity: 0 !important; pointer-events: none !important; transform: translateY(12px); }
	#arcontactus .arcontactus-prompt, #arcontactus .arcontactus-message-button + .arcontactus-prompt,
	#arcontactus .callback-countdown-block { display: none !important; }
	#arcontactus.arcontactus-widget { transform: scale(.82); transform-origin: bottom right; }
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1100px) {
	.e26-logo img { width: 210px; }
	.e26-nav .ubermenu .ubermenu-item-level-0 > .ubermenu-target { padding: 18px 10px !important; font-size: 13px !important; }
}
@media (max-width: 960px) {
	.e26-header { position: relative; }
	.e26-header__inner { grid-template-columns: 1fr; padding-left: 0; }
	.e26-logo { justify-content: center; padding: 14px var(--e-gutter); }
	.e26-logo img { width: 230px; }
	.e26-header__right { clip-path: none; }
	.e26-band { justify-content: center; padding: 0; min-height: 0; gap: 0; display: grid; grid-template-columns: 1fr 1fr; }
	.e26-band__cta, .e26-band__phone { justify-content: center; min-height: 52px; padding: 0 10px; font-size: 15px; text-align: center; }
	.e26-band__cta { background: var(--e-mustard); }
	.e26-band__cta::after { display: none; }
	.e26-band__phone { background: var(--e-mustard-deep); }
	.e26-nav { padding: 0 !important; min-height: 0; display: block; }
	.e26-charter__inner { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
	.e26-slide__cap { font-size: 15px; padding: 14px 16px; }
	.e26-hero__dots { top: 8px; right: 8px; }
	.e26-lens { padding: 22px 20px 56px; }
	.e26-lens__text p { font-size: 15px; }
	.e26-lens__cap { left: 20px; right: 20px; }
	.e26-charter__actions .e26-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.e26 *, .e26 *::before, .e26 *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* ==========================================================================
   Hero, cinematic layer: push-in, seal stamp (first view), caption rise, timer bar
   ========================================================================== */
.e26-slide__zoom { display: block; position: relative; transform-origin: 11% 42%; will-change: transform; }
.e26-slide.is-active .e26-slide__zoom { animation: e26-push 7.5s cubic-bezier(.3,.1,.3,1) both; }
@keyframes e26-push { from { transform: scale(1); } to { transform: scale(1.055); } }
.e26-slide.is-active .e26-slide__cap > span { animation: e26-caprise .7s var(--e-ease) .15s both; }
@keyframes e26-caprise { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

/* badge.png pixel-fitted onto the baked seal: rotate -7.5deg, scale .878, x 20, y 48 of 1200 x 432 (mean diff 7.9) */
.e26-slide__zoom > img.e26-seal { position: absolute; left: 1.667%; top: 11.111%; width: 20.667%; transform: rotate(-7.5deg); height: auto; opacity: 0; pointer-events: none; } /* beats .e26-slide__img img { width:100% } */
.e26-hero.is-intro .e26-slide.is-active .e26-slide__zoom > img:first-child { animation: e26-lightup 1.7s ease .55s both; }
@keyframes e26-lightup { from { filter: brightness(.2) saturate(.6); } to { filter: none; } }
.e26-hero.is-intro .e26-seal { animation: e26-stamp 2.6s cubic-bezier(.2,.9,.25,1.2) .25s both; }
@keyframes e26-stamp {
	0%   { opacity: 0; transform: scale(1.9) rotate(-21.5deg); filter: blur(3px) drop-shadow(0 20px 30px rgba(0,0,0,.6)); }
	22%  { opacity: 1; transform: scale(.94) rotate(-5.5deg); filter: blur(0) drop-shadow(0 4px 6px rgba(0,0,0,.5)); }
	30%  { transform: scale(1.03) rotate(-8.5deg); }
	38%  { transform: scale(1) rotate(-7.5deg); filter: none; }
	50%  { opacity: 1; transform: scale(1) rotate(-7.5deg); }
	72%, 100% { opacity: 0; transform: scale(1) rotate(-7.5deg); }
}
.e26-hero.is-intro .e26-slide.is-active .e26-slide__cap > span { animation-delay: 1.3s; }

.e26-hero__bar { position: absolute; left: 0; bottom: 0; z-index: 2; width: 100%; height: 3px; background: var(--e-mustard); transform: scaleX(0); transform-origin: left; }
.e26-hero__bar.is-running { animation: e26-bar 6s linear both; }
@keyframes e26-bar { to { transform: scaleX(1); } }
.e26-hero__stage:hover .e26-hero__bar, .e26-hero__stage:focus-within .e26-hero__bar { animation-play-state: paused; }

@media (prefers-reduced-motion: reduce) {
	.e26-slide__zoom, .e26-seal, .e26-hero__bar { animation: none !important; }
}

/* Footer credit */
.e26 .copyright { display: flex; justify-content: center; padding: 18px var(--e-gutter) 22px; }
.e26-credit { margin: 0; font: 600 14px/1.5 var(--e-body); color: var(--e-ink-2); text-align: center; }
.e26-credit a { font-family: var(--e-head); font-weight: 800; color: var(--e-navy-ink); text-decoration: none; letter-spacing: .01em; }
.e26-credit a:hover { color: var(--e-crimson); text-decoration: underline; text-decoration-color: var(--e-mustard); text-decoration-thickness: 2px; }

/* ---------- Related police guides (police page; always loaded, the list ships even with legal features off) ---------- */
.e26-guides { max-width: var(--e-wrap); margin: 36px auto 0; padding: 26px 28px; background: #fff; border-left: 4px solid var(--e-crimson); box-shadow: 0 10px 30px -22px rgba(17,29,51,.5); }
.e26-guides__title { margin: 0 0 12px; font: 800 22px/1.2 var(--e-head); color: var(--e-navy-ink); }
.e26-guides__list { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 6px 24px; }
.e26-guides__list a { display: block; padding: 8px 0; font: 600 16px/1.4 var(--e-body); color: var(--e-navy); text-decoration: none; border-bottom: 1px solid var(--e-line); }
.e26-guides__list a:hover { color: var(--e-crimson); }


/* ==========================================================================
   Phones: sticky tap-to-call bar (scorecard #2) + collapsible top form on inner pages (#10)
   ========================================================================== */
.e26-callbar { display: none; }
.e26-request__toggle { display: none; }
@media (max-width: 767px) {
	.e26-callbar {
		display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; align-items: center; justify-content: center; gap: 10px;
		min-height: 58px; padding: 8px 16px calc(8px + env(safe-area-inset-bottom)); background: var(--e-crimson); color: #fff; text-decoration: none;
		font: 800 18px/1.1 var(--e-head); letter-spacing: .01em; box-shadow: 0 -8px 24px -12px rgba(17,29,51,.55);
	}
	.e26-callbar svg { flex: none; }
	.e26-callbar small { font: 600 13px/1 var(--e-body); opacity: .9; margin-left: 4px; }
	body.e26 { padding-bottom: 66px; }
	#arcontactus { bottom: 74px !important; }
	/* inner pages: the four-field form no longer fills the first screen */
	body.e26:not(.home) #request-form { height: auto !important; }
	body.e26:not(.home) #request-form .e26-request__toggle {
		float: none !important; position: static !important; margin: 0 !important; padding: 0 16px !important;
		display: flex; width: 100%; min-height: 52px; align-items: center; justify-content: center; gap: 10px; border: 2px solid var(--e-mustard);
		background: transparent; color: #fff; font: 800 18px/1 var(--e-head); cursor: pointer; border-radius: 2px;
	}
	body.e26:not(.home) #request-form .form-free-request { display: none; }
	body.e26:not(.home) #request-form.is-open .form-free-request { display: flex; margin-top: 14px; }
	body.e26:not(.home) #request-form.is-open .e26-request__toggle { display: none; }
}

/* ==========================================================================
   Motion below the hero: sections glide in on scroll, interactive things respond on hover.
   Content is only hidden when JS has run (html.e26-js), so nothing disappears without JS.
   Never applied to the hero (LCP) or the header.
   ========================================================================== */
.e26-js .e26-reveal { opacity: 0; transform: translateY(26px); transition: opacity .75s var(--e-ease), transform .75s var(--e-ease); transition-delay: var(--e26-d, 0s); }
.e26-js .e26-reveal.is-in { opacity: 1; transform: none; }
.e26 .su-button, .e26 .rpwe-more, .e26 .home-feat-testi a, .e26 .callouts a, .e26 .cta-form-wrapper input[type="submit"], .e26-btn {
	transition: transform .25s var(--e-ease), box-shadow .25s var(--e-ease), background-color .2s, color .2s;
}
.e26 .su-button:hover, .e26 .cta-form-wrapper input[type="submit"]:hover, .e26-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 22px -12px rgba(17,29,51,.55); }
.e26 .why-us .service-box img { transition: transform .35s var(--e-ease); }
.e26 .why-us .service-box:hover img { transform: scale(1.12) rotate(-4deg); }
.e26 .blogs .rpwe-block li { overflow: hidden; }
.e26 .blogs .rpwe-block img { transition: transform .6s var(--e-ease); }
.e26 .blogs .rpwe-block li:hover img { transform: scale(1.06); }
.e26 .accord .su-column img { transition: transform 1.2s var(--e-ease); }
.e26 .accord .su-column:hover img { transform: scale(1.03); }
@media (prefers-reduced-motion: reduce) {
	.e26-js .e26-reveal { opacity: 1; transform: none; transition: none; }
}
