/*
Theme Name: PermitBridge
Theme URI: 
Author: NovaPixel
Author URI: 
Description: Clean, modern block theme designed for service-based businesses. Built with a spacious layout, strong typography hierarchy, and optimized for performance, accessibility, and full-site editing.
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: permitbridge
Tags: 
*/



/* ========================================
   STICKY HEADER
======================================== */

.site-header, .is-position-sticky {
	position: sticky;
	top: 0;
	z-index: 1000;
}

/* Common block-theme wrappers */
html,
body,
.wp-site-blocks,
.wp-site-blocks > *,
header,
.is-position-sticky,
.wp-block-template-part {
	overflow-x: visible;
}


/* ========================================
REMOVE LOGO UNDERLINE / LINK EFFECT
======================================== */

.site-header .wp-block-site-logo a,
.site-header .wp-block-site-title a, .custom-logo-link {
	text-decoration: none !important;
}

.site-header .wp-block-site-logo  a::after,
.site-header .wp-block-site-title a::after, .custom-logo-link::after {
	display: none !important;
	content: none !important;
}

.site-header .wp-block-site-logo a:hover,
.site-header .wp-block-site-logo a:focus,
.site-header .wp-block-site-logo a:active,
.site-header .wp-block-site-title a:hover,
.site-header .wp-block-site-title a:focus,
.site-header .wp-block-site-title a:active,
.custom-logo-link:hover, .custom-logo-link:focus, .custom-logo-link:active {
	color: inherit !important;
}



/* ========================================
PROCESS SECTION TABS
======================================== */

.process-tabs .process-tab {
	cursor: pointer;
	padding: 24px;
	border-left: 1px solid #2F3A45;
	transition: background 0.2s ease, border-left-color 0.2s ease, border-left-width 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
	box-sizing: border-box;
}

.process-tabs .process-tab + .process-tab {
	margin-top: 24px;
}

.process-tabs .process-tab.is-active {
	background: #ffffff;
	border-left: 2px solid #2F3A45;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.process-tabs .process-tab:hover {
	background: #f8fafc;
	border-left: 2px solid #1E5BFF;
}

.process-tabs .process-image {
	display: none;
}

.process-tabs .process-image.is-active {
	display: block;
}

.process-tabs .process-image img {
	display: block;
	width: 100%;
	height: auto;
}



/* ========================================
LOCATIONS TABS
======================================== */

.locations-tabs .locations-tab {
	cursor: pointer;
	padding: 24px;
	border-left: 1px solid #2F3A45;
	transition: background 0.2s ease, border-left-color 0.2s ease, border-left-width 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
	box-sizing: border-box;
}

.locations-tabs .locations-tab + .locations-tab {
	margin-top: 24px;
}

.locations-tabs .locations-tab.is-active {
	background: #ffffff;
	border-left: 2px solid #2F3A45;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.locations-tabs .locations-tab:hover {
	background: #f8fafc;
	border-left: 2px solid #1E5BFF;
}

.locations-tabs .locations-image {
	display: none;
}

.locations-tabs .locations-image.is-active {
	display: block;
}

.locations-tabs .locations-image img {
	display: block;
	width: 100%;
	height: auto;
}



/* ========================================
GLOBAL LINK SYSTEM
======================================== */

a,
.wp-block-navigation a {
	position: relative;
	color: inherit;
	text-decoration: none !important;
	transition: color 0.2s ease;
}

a::after,
.wp-block-navigation a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 0%;
	height: 2px;
	background: #1E5BFF;
	transition: width 0.25s ease;
}

a:hover,
.wp-block-navigation a:hover {
	color: #1E5BFF;
}

a:hover::after,
.wp-block-navigation a:hover::after {
	width: 100%;
}

a:focus,
a:active,
.wp-block-navigation a:focus,
.wp-block-navigation a:active {
	color: #153DB3;
}

a:focus::after,
a:active::after,
.wp-block-navigation a:focus::after,
.wp-block-navigation a:active::after {
	width: 100%;
	background: #153DB3;
}



/* ========================================
BUTTON SYSTEM
======================================== */

.wp-block-button__link {
	text-decoration: none !important;
	position: relative;
	overflow: hidden;
	display: inline-block;
	transition: all 0.25s ease;
	font-weight: 500;
}



/* PRIMARY CTA */

.wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #1E5BFF;
	color: #ffffff;
	border: none;
	box-shadow: 0 4px 12px rgba(30, 91, 255, 0.2);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background: #153DB3;
	color: #ffffff;
	border: none;
	transform: translateY(-3px);
	box-shadow: 0 10px 24px rgba(30, 91, 255, 0.35);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:active {
	background: #153DB3;
	color: #ffffff;
	border: none;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(30, 91, 255, 0.25);
}



/* OUTLINED BUTTON */

.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: #1E5BFF;
	border: 2px solid #1E5BFF;
	box-shadow: none;
	transition: all 0.25s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: #1E5BFF;
	color: #ffffff !important;
	border: 2px solid #1E5BFF;
	transform: translateY(-3px);
	box-shadow: 0 6px 16px rgba(30, 91, 255, 0.25);
}

.wp-block-button.is-style-outline .wp-block-button__link:active {
	background: #1E5BFF;
	color: #ffffff !important;
	border: 2px solid #1E5BFF;
	transform: translateY(-1px);
	box-shadow: 0 2px 6px rgba(30, 91, 255, 0.2);
}



/* ========================================
CARD SYSTEM
======================================== */

.card {
	overflow: hidden;
	padding: 24px;
	background: #ffffff;
	border-left: 1px solid #2F3A45;
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
	transition: background 0.2s ease, border-left-color 0.2s ease, border-left-width 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
	box-sizing: border-box;
}

.card img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform 0.25s ease;
}

.card:hover {
	background: #f8fafc;
	border-left: 2px solid #1E5BFF;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
	transform: translateY(-2px);
}

.card:hover img {
	transform: scale(1.03);
}