#catelaw-vid-widget {
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 200px;
	z-index: 99999;
	border-radius: 12px;
	overflow: visible;
	box-shadow: 0 4px 20px rgba(0,0,0,0.4);
	animation: slideUp .6s ease-out;
	background: black;
}

#catelaw-vid-widget summary {
	position: absolute;
	top: -12px;
	right: -12px;
	width: 28px;
	height: 28px;
	background: rgba(0,0,0,0.85);
	color: white;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	font-family: Arial, sans-serif;
	z-index: 100001;
	line-height: 1;
	list-style: none;
	border: 2px solid white;
}

#catelaw-vid-widget summary:hover {
	background: rgba(220,40,40,0.95);
}

#catelaw-vid-widget summary::-webkit-details-marker {
	display: none;
}

#catelaw-vid-widget video {
	width: 200px;
	height: 355px;
	object-fit: cover;
	border-radius: 12px;
	display: block;
	cursor: pointer;
}

#catelaw-vid-widget:not([open]) {
	display: none;
}

#actionbar {
	bottom: auto !important;
	top: 60px !important;
	right: 10px !important;
}

@keyframes slideUp {
	from {
		transform: translateY(100px);
		opacity: 0;
	}
	
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@media(max-width:768px) {
	#catelaw-vid-widget {
		width: 150px;
		bottom: 10px;
		right: 10px;
	}
	
	#catelaw-vid-widget video {
		width: 150px;
		height: 267px;
	}
}

/* Sticky mobile Call Now button */
.mobile-call-btn {
	display: none;
}

@media (max-width: 768px) {
	.mobile-call-btn {
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		background: #8B0000;
		color: #fff !important;
		text-decoration: none !important;
		padding: 16px;
		font-size: 18px;
		font-weight: bold;
		z-index: 99998;
		box-shadow: 0 -2px 10px rgba(0,0,0,0.25);
		border-top: 1px solid rgba(255,255,255,0.1);
	}
	
	.mobile-call-btn:hover,
						  .mobile-call-btn:active {
		background: #6B0000;
	}
	
	#catelaw-vid-widget {
		bottom: 70px !important;
	}
}

/* Hide redundant post meta clutter */
.post-navigation {
	display: none !important;
}

.cat-links {
	display: none !important;
}

/* ============================================
   TYPOGRAPHY POLISH — 2026-04-21
   Playfair Display serif for headings (authority/trust signal)
   Preserve PT Sans body for readability
   ============================================ */
h1, h2, h3,
.wp-block-heading,
.entry-title,
.site-title {
	font-family: 'Playfair Display', Georgia, 'Times New Roman', serif !important;
	letter-spacing: -.01em;
	line-height: 1.2;
}

h4, h5, h6 {
	font-family: 'PT Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

h1, .entry-title {
	font-weight: 800;
}

h2, .wp-block-heading {
	font-weight: 700;
}

/* ============================================
   BUTTON POLISH — smoother hover, subtle lift
   ============================================ */
.wp-block-button__link,
button, input[type="submit"] {
	transition: background-color .2s ease, transform .15s ease, filter .2s ease;
	letter-spacing: .3px;
}

.wp-block-button__link:hover,
button:hover, input[type="submit"]:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
}

/* ============================================
   HEADING BREATHING ROOM
   ============================================ */
.wp-block-cover h1,
.wp-block-cover h2 {
	margin-bottom: .6em;
}

/* ============================================
   BUTTON DEPTH POLISH — 2026-04-22
   Shadow + hover lift for substance
   ============================================ */
.wp-block-button__link,
.wp-block-button .wp-element-button,
button.wp-element-button {
	box-shadow: 0 2px 6px rgba(0,0,0,0.12);
	font-weight: 600;
}

.wp-block-button__link:hover,
.wp-block-button .wp-element-button:hover,
button.wp-element-button:hover {
	box-shadow: 0 6px 16px rgba(0,0,0,0.22);
}

/* Refine site-wide link hover on top-nav */
.main-navigation a:hover,
.site-header a:hover {
	color: #7a2727 !important;
	transition: color .15s ease;
}

/* Better practice-area page title treatment */
.page .entry-title,
.single .entry-title {
	font-size: clamp(2rem, 4vw, 3rem);
	margin-bottom: .3em;
}

/* Slightly relax paragraph line-height for more breathable reading */
.entry-content p {
	line-height: 1.65;
}

/* ============================================
   HIDE DUPLICATE TITLE BANDS — 2026-04-23
   On pages with hero covers (practice areas, about, petition)
   suppress the theme's own entry-header/title band so the hero cover
   carries the full-width title treatment.
   ============================================ */
.page-id-6761 .entry-header,   /* Drug Charges */
.page-id-314 .entry-header,    /* DUI Offenses */
.page-id-307 .entry-header,    /* Violent Crimes */
.page-id-310 .entry-header,    /* Property Crimes */
.page-id-309 .entry-header,    /* Sex Crimes */
.page-id-8 .entry-header,      /* About */
.page-id-6775 .entry-header,   /* Petition to Suspend (explainer) */
.page-id-6796 .entry-header,   /* Petition to Suspend Intake */
.page-id-6053 .entry-header,
.page-id-6228 .entry-header,
.page-id-7 .entry-header {
/* Practice Areas overview */
	display: none;
}

/* Ensure hero cover blocks on these pages sit flush to the header nav */
.page-id-6761 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-314 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-307 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-310 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-309 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-8 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-6775 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-6796 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-6053 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-6228 .entry-content > .wp-block-cover.alignfull:first-child,
.page-id-7 .entry-content > .wp-block-cover.alignfull:first-child {
	margin-top: 0;
}

/* Sticky header */
body:not(.fse-enabled) #masthead {
  position: sticky !important;
  top: 0;
  z-index: 9999;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.admin-bar:not(.fse-enabled) #masthead {
  top: 32px;
}
@media screen and (max-width: 782px) {
  .admin-bar:not(.fse-enabled) #masthead {
    top: 46px;
  }
}
/* vid widget hidden */
#catelaw-vid-widget { display: none !important; }

/* Hide WordPress.com footer branding */
.site-info a[href*="wordpress.com"] {
  display: none !important;
}
.site-info .sep {
  display: none !important;
}
.powered-by-wordpress,
a.powered-by-wordpress {
  display: none !important;
}

/* Hide Jetpack subscribe widget on blog posts */
.wp-block-jetpack-subscriptions {
  display: none !important;
}

/* ============================================
   HEADER REBUILD - 2026-10-08
   Full-width one-row header, phone button in nav,
   compact sticky bar on phones, hero promo cards re-anchored.
   Menu items: "Call" = menu item class .menu-call-btn (menu 1359).
   ============================================ */
body:not(.fse-enabled) #masthead {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 10px 32px !important;
}
body:not(.fse-enabled) #masthead::before,
body:not(.fse-enabled) #masthead::after { content: none !important; display: none !important; }
#masthead .site-logo { margin: 0 !important; flex: 0 0 auto; line-height: 0; }
#masthead .custom-logo { max-height: 60px; width: auto; height: auto; }
#masthead .social-navigation { display: none !important; }
#masthead .main-navigation { margin: 0 !important; }
#masthead .main-navigation > div > ul { flex-wrap: nowrap; align-items: center; margin: 0; }
#masthead .main-navigation > div > ul > li { padding: 8px 10px; white-space: nowrap; }
#masthead .main-navigation > div > ul > li > a { font-size: 16px; font-weight: 600; }
#masthead .main-navigation li.menu-call-btn { margin-left: 8px; padding-right: 0; }
#masthead .main-navigation li.menu-call-btn > a {
	display: inline-block;
	background: #7a2727;
	color: #fff !important;
	border-radius: 6px;
	padding: 12px 16px !important;
	font-weight: 700;
	line-height: 1;
}
#masthead .main-navigation li.menu-call-btn > a:hover { background: #5e1d1d; color: #fff !important; }

/* Laptop / small desktop */
@media (min-width: 560px) and (max-width: 1199px) {
	body:not(.fse-enabled) #masthead { padding: 8px 16px !important; gap: 12px; }
	#masthead .custom-logo { max-height: 48px; }
	#masthead .main-navigation > div > ul > li { padding: 8px 6px; }
	#masthead .main-navigation > div > ul > li > a { font-size: 15px; }
	#masthead .main-navigation li.menu-call-btn > a { padding: 10px 12px !important; }
}

/* Tablet portrait: logo row + nav row */
@media (min-width: 560px) and (max-width: 899px) {
	body:not(.fse-enabled) #masthead { flex-wrap: wrap; justify-content: center; row-gap: 0; padding: 6px 12px !important; }
	#masthead .main-navigation { flex: 1 1 100%; }
	#masthead .main-navigation > div { display: block; }
	#masthead .main-navigation > div > ul { flex-wrap: wrap; justify-content: center; margin: 0 !important; }
	#masthead .custom-logo { max-height: 44px; }
}

/* Phones: one compact row (logo + Menu), menu opens as a full-width panel */
@media (max-width: 559px) {
	body:not(.fse-enabled) #masthead { padding: 8px 16px !important; gap: 12px; flex-wrap: nowrap; }
	#masthead .custom-logo { max-height: 44px; }
	#masthead .main-navigation #toggle-menu { padding: 10px 14px; font-size: 15px; line-height: 1; }
	#masthead .main-navigation > div {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		background: #fff;
		max-height: calc(100vh - 64px);
		overflow-y: auto;
		padding: 4px 20px 24px;
		box-shadow: 0 10px 20px rgba(0,0,0,.15);
	}
	#masthead .main-navigation > div > ul { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
	#masthead .main-navigation li { padding: 0 !important; white-space: normal; }
	#masthead .main-navigation > div > ul > li > a { display: block; padding: 12px 0; font-size: 17px; border-bottom: 1px solid #eee; }
	#masthead .main-navigation .sub-menu a { display: block; padding: 8px 0 8px 14px; font-size: 15px; font-weight: 400; }
	#masthead .main-navigation li.menu-call-btn { order: -1; margin: 12px 0 4px; }
	#masthead .main-navigation li.menu-call-btn > a { display: block; text-align: center; padding: 14px !important; border-bottom: 0; }
}

/* Homepage hero promo cards: below the shorter header on desktop, stacked under the hero on phones */
.home .entry-content > a[href*="/petition/"][style*="absolute"],
.home .entry-content > a[href="/new-client-intake/"][style*="absolute"] { top: 104px !important; }
@media (max-width: 781px) {
	.home .entry-content > a[href*="/petition/"][style*="absolute"],
	.home .entry-content > a[href="/new-client-intake/"][style*="absolute"] {
		position: static !important;
		max-width: none !important;
		margin: 12px 16px !important;
	}
}
