/*
Theme Name: PCA Investigators (Extendable Child)
Theme URI: https://localhost/pcai
Description: Child theme of Extendable for the Percival, Carter & Associates Investigators (PCAI) Gutenberg rebuild. Holds brand colors, typography, custom patterns, and template overrides so they survive parent-theme updates.
Author: Maxxus Industries
Template: extendable
Version: 0.1.1
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: extendable-pcai-child
*/

/*
 * Block themes are styled primarily through theme.json and the Site Editor.
 * Add only hand-written CSS that can't be expressed in theme.json here.
 */

/* Hero as image-background Cover: content width + overlaid stat + light ghost CTA. */
:root{
	--transition: .5s all ease;
}
html, body{
	overflow-x: clip;
}
.pcai-hero-content { max-width: 640px; }
.pcai-badge-num {
	font-family: var(--wp--preset--font-family--playfair);
	font-size: 38px;
	font-weight: 700;
	line-height: 1;
	color: var(--wp--preset--color--primary);
}
.pcai-hero-stat { display: flex; align-items: center; gap: 12px; margin-top: 26px; }
.pcai-hero-stat p { margin: 0; }
.pcai-hero-stat .pcai-hero-stat-lbl { font-size: 14px; color: #e9e3d7; }
.pcai-btn-ghost-light .wp-block-button__link { background-color: transparent; border-color: #fff; color: #fff; }
.pcai-btn-ghost-light .wp-block-button__link:hover { background-color: #fff; border-color: #fff; color: var(--wp--preset--color--foreground); }

/* Hero stat badge overlaid on the right-column image card (restored). */
.pcai-hero-media { position: relative; }
.pcai-hero-media .wp-block-image { margin: 0; }
.pcai-hero-media .wp-block-image img { display: block; box-shadow: 0 24px 60px rgba(29, 28, 28, .18); }
.pcai-hero-badge {
	position: absolute;
	bottom: -22px;
	left: -22px;
	padding: 18px 24px;
	border-left: 4px solid var(--wp--preset--color--primary);
}
.pcai-hero-badge p { margin: 0; }
.pcai-hero-badge .pcai-badge-num { font-size: 28px; }

/* Audience triage fork: per-path gradient grounds + divider. */
.pcai-fork-attorney { background: linear-gradient(135deg, #232121, #1a1919); }
.pcai-fork-heir { background: linear-gradient(135deg, #1f2b24, #1a1919); }
.pcai-fork p { color: #b6ae9f; max-width: 420px; }
@media (min-width: 782px) {
	.pcai-fork-attorney { border-right: 1px solid #383636; }
}

/* Section vertical rhythm. */
.pcai-section { padding-top: 74px; padding-bottom: 74px; }

/* Eyebrow / kicker label. */
.pcai-kicker {
	font-family: var(--wp--preset--font-family--lora);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 14px !important;
	color: var(--wp--preset--color--primary);
	margin-bottom: 10px;
}

/* Stats band. */
.pcai-num { font-family: var(--wp--preset--font-family--playfair); font-size: 46px; font-weight: 700; line-height: 1; }
.pcai-lbl { font-size: 15px; opacity: .9; margin-top: 6px; }

/* Trust bar items. */
.pcai-trust-item::before { content: "\2726\00a0"; color: var(--wp--preset--color--primary); }

/* Pain-point cards. */
.pcai-pain-card { border: 1px solid var(--wp--preset--color--border-gray); border-top: 3px solid var(--wp--preset--color--primary); }

/* HeirFinder cards + rotated diamond icon. */
.pcai-hf-card { border: 0; transition: transform .2s, box-shadow .2s; }
.pcai-hf-card:hover { box-shadow: 0 14px 34px rgba(29, 28, 28, .10); transform: translateY(-3px); }
.pcai-hf-icon {
	width: 54px; height: 54px;
	display: flex; align-items: center; justify-content: center;
	font-size: 24px; margin-bottom: 16px;
}
.pcai-hf-icon > * {  margin: 0; }

/* Steps. */
.pcai-step { border-top: 3px solid var(--wp--preset--color--primary); }
.pcai-step-n { font-family: var(--wp--preset--font-family--playfair); font-size: 40px; color: var(--wp--preset--color--primary); font-weight: 700; line-height: 1; }

/* Top bar + sticky header. */
.pcai-topbar { font-size: 13px; }
.pcai-topbar, .pcai-topbar a, .pcai-topbar p { color: #c9c2b4; }
.pcai-header { border-bottom: 1px solid #383636; }
/* Make the whole header template part sticky. The part wrapper is the first
   child of .wp-site-blocks (full page height), so sticky holds across the page —
   unlike .pcai-header itself, whose parent wrapper is too short. */
.wp-site-blocks > .wp-block-template-part:first-child { position: sticky; top: 0; z-index: 40; }
/* Dark header: light nav / title / outline button. */
.pcai-header .wp-block-site-title a { color: #fff; }
.pcai-header .wp-block-navigation, .pcai-header .wp-block-navigation a { color: #fff; }
.pcai-header .wp-block-navigation a:hover { color: var(--wp--preset--color--primary); }
.pcai-header .is-style-outline .wp-block-button__link { color: #fff; border-color: #fff; }
.pcai-header .is-style-outline .wp-block-button__link:hover { background-color: #fff; color: var(--wp--preset--color--secondary); }

/* CTA button rows — spacing/centering via classes (not layout attributes) so
   the saved block markup matches Gutenberg's canonical output and validates. */
.wp-block-buttons.pcai-cta-top { margin-top: 24px; }
.wp-block-buttons.pcai-cta-center { justify-content: center; }
.pcai-header-cta { gap: 10px; flex-wrap: nowrap; }

/* Button color variants via class (avoids border/color attribute class mismatches). */
.pcai-btn-forest .wp-block-button__link { background-color: var(--wp--preset--color--forest); border-color: var(--wp--preset--color--forest); color: #fff; }
.pcai-btn-forest .wp-block-button__link:hover { background-color: #26583f; border-color: #26583f; }
.pcai-btn-light .wp-block-button__link { background-color: #fff; border-color: #fff; color: var(--wp--preset--color--foreground); }
.pcai-btn-light .wp-block-button__link:hover { background-color: #efe9dd; border-color: #efe9dd; }

/* Footer. */
.pcai-footer a:hover { color: var(--wp--preset--color--primary); }
.pcai-foot-form input {
	width: 100%; padding: 11px 12px; margin-bottom: 10px;
	border: 1px solid #3a3838; background: #1f1e1e; color: #fff;
	font-family: var(--wp--preset--font-family--lora);
}
.hovered_grid:hover{
	transform: translate(0, -10px);
}
.hovered_grid .pcai-hf-icon p {
    position: relative;
    padding-top: 24px;
    padding-left: 5px;
}
.hovered_grid .pcai-hf-icon p:before{
	position: absolute;
	content: "";
	width: 60px;
	height: 60px;
	left: -11px;
	top: 15px;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	transform: rotate(45deg);
	z-index: 1;
	transition: var(--transition);
	background-color: #4c4b4b;
}
.hovered_grid .pcai-hf-icon p img,
.hovered_grid .elementor-icon span{
	position: relative;
	z-index:2;
}
.hovered_grid .elementor-icon span{
	margin-left: -10px;
  margin-top: 30px;
  position: relative;
  line-height: 1.4em;
}
.hovered_grid .pcai-hf-icon p:after {
	position: absolute;
	content: "";
	width: 60px;
	height: 60px;
	left: -11px;
	top: 5px;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	transform: rotate(45deg);
	transition: var(--transition);
	background-color: #2d2c2c;
}
.hovered_grid:hover .pcai-hf-icon p:before {
	background-color: #66573e;
	transform: rotate(135deg);
}
.hovered_grid:hover .pcai-hf-icon p:after {
	background-color: #86714d;
	transform: rotate(-45deg);
}
.hovered_grid.has-background-background-color {
    background-color: var(--wp--preset--color--secondary) !important;
	transition: var(--transition);
}
.hovered_grid.has-background-background-color:hover {
    background-color: var(--wp--preset--color--primary) !important;
}

/* Hide all image captions site-wide. */
figcaption,
.wp-element-caption { display: none !important; }

/* Buttons: a translucent "shine" sweep on hover that overlays the button and
   preserves each button's own background color (gold / forest / light / ghost /
   outline). Plus a slight grow. */
.wp-block-button__link {
	position: relative;
	overflow: hidden;
}
.wp-block-button__link::after {
	content: "";
	position: absolute;
	top: 0;
	left: -150%;
	width: 75%;
	height: 100%;
	background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, .3) 50%, transparent 100%);
	transform: skewX(-20deg);
	transition: left .7s ease;
	pointer-events: none;
}
.wp-block-button__link:hover::after { left: 150%; }
.wp-block-button__link:hover {
	transform: scale(1.05);
	box-shadow: 0 8px 22px rgba(29, 28, 28, .18);
}

/* Remove the gap between the sticky header and the main content. */
.wp-site-blocks > main { margin-block-start: 0 !important; }

/* Get Started flow: smooth in-page scrolling + offset so the anchored form
   clears the sticky header, plus the two audience choice cards. */
html { scroll-behavior: smooth; }
.pcai-anchor { scroll-margin-top: 110px; }
.pcai-choice-card { height: 100%; background-color: #232121; border: 1px solid #383636; transition: var(--transition); }
.pcai-choice-card:hover { border-color: var(--wp--preset--color--primary); transform: translateY(-4px); }
.wp-element-button {
	transition: var(--transition) !important;
}
.custom-logo {
	background-color: var(--wp--preset--color--cream);
}
/* ---- Submit-a-Case (Business / Individual) pages ---- */
.pcai-dark-card { background-color: #1f1e1e; border: 1px solid #383636; height: 100%; transition: var(--transition); }
.pcai-dark-card:hover { border-color: var(--wp--preset--color--primary); transform: translateY(-4px); }
/* Numbered / icon diamond. */
.pcai-diamond { width: 64px; height: 64px; margin: 0 auto 18px; background-color: #2d2c2c; border: 1px solid #66573e; transform: rotate(45deg); display: flex; align-items: center; justify-content: center; }
.pcai-diamond > * { transform: rotate(-45deg); margin: 0; font-family: var(--wp--preset--font-family--playfair); font-size: 22px; font-weight: 700; color: var(--wp--preset--color--primary); }
/* Form shell that wraps a WPForms block. */
.pcai-form-shell { background-color: #1f1e1e; border: 1px solid #383636; }
.pcai-form-shell .wp-block-heading { color: #fff; }
/* Make WPForms inputs legible on the dark shell (applies once the form is embedded). */
.pcai-form-shell input[type=text], .pcai-form-shell input[type=email], .pcai-form-shell input[type=tel],
.pcai-form-shell input[type=number], .pcai-form-shell select, .pcai-form-shell textarea {
	background-color: #161515 !important; border: 1px solid #3a3838 !important; color: #fff !important;
}
.pcai-form-shell .wpforms-field-label { color: #e9e3d7 !important; }

/* ---- Pricing page ---- */
.pcai-pricing-hero h1 em { color: var(--wp--preset--color--primary); font-style: italic; }
.pcai-pill { display: block; width: fit-content; margin-left: auto; margin-right: auto; padding: 8px 18px; border: 1px solid #383636; border-radius: 30px; font-size: 13px; color: #c9c2b4; }

/* Individual/Business toggle — native buttons + tiny theme JS (no raw HTML,
   so it survives editor sanitization on production). */
.pcai-pricing-tabs { text-align: center; }
.pcai-ptab-nav { width: fit-content; margin: 0 auto 40px; display: flex; gap: 4px; background: #1f1e1e; border: 1px solid #383636; border-radius: 40px; padding: 5px; }
.pcai-tab-btn .wp-block-button__link { background-color: transparent; border: 2px solid transparent; color: #c9c2b4; border-radius: 40px; padding: 9px 30px; font-weight: 500; }
.pcai-tab-btn .wp-block-button__link::after { display: none; }
.pcai-tab-btn.is-active .wp-block-button__link { background-color: var(--wp--preset--color--primary); color: var(--wp--preset--color--secondary); font-weight: 600; }
.pcai-ppanel.pcai-biz { display: none; }
.pcai-price-unit { font-size: 14px; color: #8a8578; margin-top: -4px; }

/* Pricing cards. */
.pcai-price-grid { display: flex; flex-wrap: wrap; gap: 24px; justify-content: center; }
.pcai-price-card { background: #1f1e1e; border: 1px solid #383636; padding: 34px; text-align: left; height: 100%; }
.pcai-price-card.is-featured { border-color: var(--wp--preset--color--primary); }
.pcai-price-card h3 { font-family: var(--wp--preset--font-family--playfair); font-size: 26px; color: #fff; margin: 0 0 8px; }
.pcai-price-card .pcai-kicker { margin-bottom: 6px; }
.pcai-price-desc { font-size: 14px; color: #b6ae9f; }
.pcai-price-amount { font-family: var(--wp--preset--font-family--playfair); font-size: 46px; font-weight: 700; color: #fff; line-height: 1; margin: 14px 0 6px; }
.pcai-price-amount sup { font-size: 22px; top: -.5em; }
.pcai-price-amount small { font-size: 14px; color: #8a8578; font-weight: 400; font-family: var(--wp--preset--font-family--lora); }
.pcai-price-note { font-size: 13px; color: #8a8578; border-top: 1px solid #383636; padding-top: 14px; margin-top: 14px; }
.pcai-feature-checks { list-style: none; padding: 0; margin: 18px 0 24px; }
.pcai-feature-checks li { padding: 7px 0 7px 26px; position: relative; font-size: 14px; color: #c9c2b4; }
.pcai-feature-checks li::before { content: "\2713"; position: absolute; left: 0; color: var(--wp--preset--color--primary); font-weight: 700; }
.pcai-price-btn { display: block; text-align: center; padding: 14px; background: var(--wp--preset--color--primary); color: var(--wp--preset--color--secondary); font-weight: 600; border: 2px solid var(--wp--preset--color--primary); transition: var(--transition); }
.pcai-price-btn:hover { background: var(--wp--preset--color--primary-dark); border-color: var(--wp--preset--color--primary-dark); }
.pcai-price-card.is-featured .pcai-price-btn,
.pcai-price-card .pcai-price-btn.is-dark { background: var(--wp--preset--color--secondary); color: #fff; border-color: var(--wp--preset--color--secondary); }
.pcai-price-icon { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: #2d2c2c; border: 1px solid #66573e; margin-bottom: 16px; font-size: 18px; }

/* Get Started: reveal the matching form section only when its card is clicked. */
.pcai-reveal { display: none; }
.pcai-reveal:target { display: block; }

.frm_style_formidable-style.with_frm_style .frm-show-form .frm_section_heading h3[class*="frm_pos_"] {
    letter-spacing: 0;
}
