/*
 * Approved Criminal Tax Defense page body styles.
 *
 * Header, footer, global tokens/resets, and the contact form are intentionally
 * owned by approved-homepage.css + custom.css + header.css + contact-form.css
 * so the live WordPress shell matches the homepage across every page.
 */

/* ═══ BREADCRUMB ═══ */
.breadcrumb-bar{background:var(--color-surface);border-bottom:1px solid var(--color-divider);padding-block:var(--space-3)}
.breadcrumb{display:flex;align-items:center;gap:var(--space-2);list-style:none;flex-wrap:wrap}
.breadcrumb li{font-size:var(--text-xs);color:var(--color-text-muted)}
.breadcrumb a{color:var(--color-text-muted);transition:color var(--transition)}
.breadcrumb a:hover{color:var(--color-text)}
.breadcrumb [aria-current="page"]{color:var(--color-text);font-weight:600}

/* ═══ PAGE HERO ═══ */
.page-hero,.criminal-hero{position:relative;min-height:540px;display:flex;align-items:flex-end;overflow:hidden;padding-top:clamp(var(--space-4),2vw,var(--space-6));padding-bottom:clamp(var(--space-4),2vw,var(--space-6))}
.page-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--navy-900) 0%,#1a2d50 50%,#0d2040 100%)}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,27,46,0.98) 0%,rgba(13,27,46,0.7) 60%,rgba(13,27,46,0.4) 100%)}
.page-hero-content{position:relative;z-index:1;padding-top:0}
.practice-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:var(--space-4)}
.practice-badge::before{content:'';display:block;width:8px;height:8px;border-radius:50%;background:var(--crimson-500)}
.page-h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:#fff;line-height:1.1;margin-top:0;margin-bottom:var(--space-5);max-width:18ch}
.page-hero-sub{font-size:var(--text-lg);color:rgba(255,255,255,0.78);line-height:1.6;max-width:52ch;margin-bottom:var(--space-8)}

/* Hero stat bar */
.hero-stats{display:flex;align-items:center;flex-wrap:wrap;gap:0;margin-bottom:var(--space-8);background:rgba(255,255,255,0.06);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);overflow:hidden;width:fit-content}
.hero-stat{display:flex;flex-direction:column;align-items:center;padding:var(--space-4) var(--space-6);text-align:center;gap:var(--space-1)}
.hero-stat-num{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:#fff;line-height:1}
.hero-stat-label{font-size:var(--text-xs);color:rgba(255,255,255,0.45);letter-spacing:0.05em;text-transform:uppercase;white-space:nowrap}
.hero-stat-divider{width:1px;height:60px;background:rgba(255,255,255,0.12);flex-shrink:0}
.page-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4)}
.hero-reassurance{font-size:var(--text-xs);color:rgba(255,255,255,0.4);letter-spacing:0.03em}

/* ═══ URGENCY BAR ═══ */
.urgency-bar{background:var(--crimson-700);color:#fff}
.urgency-bar-inner{display:flex;align-items:flex-start;gap:var(--space-4);padding-block:var(--space-4)}
.urgency-bar p{font-size:var(--text-sm);color:rgba(255,255,255,0.9);line-height:1.6;max-width:100%}
.urgency-bar svg{flex-shrink:0;margin-top:2px;color:rgba(255,255,255,0.7)}

/* ═══ PAGE LAYOUT (content + sidebar) ═══ */
.page-layout{padding-block:clamp(var(--space-12),6vw,var(--space-20));background:var(--color-bg)}
.page-layout-inner{display:grid;grid-template-columns:1fr 320px;gap:clamp(var(--space-10),5vw,var(--space-16));align-items:start}
@media(max-width:1024px){.page-layout-inner{grid-template-columns:1fr}}

/* ─── MAIN CONTENT ─── */
.page-main{display:flex;flex-direction:column;gap:clamp(var(--space-12),5vw,var(--space-20))}
.content-section{display:flex;flex-direction:column;gap:var(--space-5)}
.content-h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--navy-800);line-height:1.15;padding-bottom:var(--space-3);border-bottom:2px solid var(--color-divider)}
.content-section p{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.8}

/* Warning callout */
.callout{display:flex;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);border-left:4px solid}
.callout-warning{background:#fef5f0;border-left-color:#c0392b}
.callout-icon{flex-shrink:0;margin-top:2px;color:#c0392b}
.callout-body{display:flex;flex-direction:column;gap:var(--space-3)}
.callout-body strong{font-size:var(--text-sm);color:var(--color-text);font-weight:700}
.callout-body ul{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}
.callout-body li{font-size:var(--text-sm);color:var(--color-text-muted);padding-left:var(--space-4);position:relative;max-width:100%}
.callout-body li::before{content:'✕';position:absolute;left:0;color:#c0392b;font-weight:700;font-size:0.7em;top:3px}

/* Charges grid */
.charges-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}
@media(max-width:640px){.charges-grid{grid-template-columns:1fr}}
.charge-item{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--color-divider);display:flex;flex-direction:column;gap:var(--space-2)}
.charge-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;color:var(--navy-800)}
.charge-item p{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.7;max-width:100%}

/* Process steps */
.process-steps{display:flex;flex-direction:column;gap:0}
.process-step{display:flex;gap:var(--space-5);padding-block:var(--space-6);border-bottom:1px solid var(--color-divider)}
.process-step:last-child{border-bottom:none}
.step-num{width:40px;height:40px;border-radius:50%;background:var(--navy-800);color:#fff;font-family:var(--font-display);font-size:var(--text-base);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.step-body{display:flex;flex-direction:column;gap:var(--space-2)}
.step-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:700;color:var(--navy-800)}
.step-body p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.75;max-width:100%}

/* Attorney callout */
.attorney-callout{background:var(--navy-800);border-radius:var(--radius-xl);overflow:hidden;display:grid;grid-template-columns:240px 1fr;gap:0}
@media(max-width:768px){.attorney-callout{grid-template-columns:1fr}}
.attorney-callout-photo{background:var(--navy-900);min-height:280px}
.attorney-headshot{width:100%;height:100%;min-height:280px;display:block;object-fit:cover;object-position:center top;border-right:1px solid rgba(255,255,255,0.08)}
@media(max-width:768px){.attorney-headshot{min-height:320px;border-right:0}}
.attorney-callout-text{padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}
.attorney-callout-eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.4)}
.attorney-callout-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:#fff}
.attorney-callout-title{font-size:var(--text-xs);color:rgba(255,255,255,0.5);line-height:1.6}
.attorney-callout-bio{font-size:var(--text-sm);color:rgba(255,255,255,0.72);line-height:1.8;max-width:100%}
.attorney-credentials-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1)}
.attorney-credentials-list li{font-size:var(--text-xs);color:rgba(255,255,255,0.5);padding-left:var(--space-4);position:relative;max-width:100%}
.attorney-credentials-list li::before{content:'·';position:absolute;left:0;color:rgba(255,255,255,0.3)}

/* Results */
.results-disclaimer{font-size:var(--text-xs);color:var(--color-text-faint);font-style:italic;max-width:100%}
.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
@media(max-width:800px){.results-grid{grid-template-columns:1fr}}
.result-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-divider);display:flex;flex-direction:column;gap:var(--space-3);transition:box-shadow var(--transition)}
.result-card:hover{box-shadow:var(--shadow-md)}
.result-tag{font-size:var(--text-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-text-faint)}
.criminal-result-tag{color:var(--navy-700)}
.result-headline{font-family:var(--font-display);font-size:var(--text-base);font-weight:700;color:var(--navy-800);line-height:1.3}
.result-outcome{display:flex;align-items:baseline;gap:var(--space-2)}
.result-number{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:var(--crimson-500);line-height:1}
.result-of{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.4;max-width:18ch}
.result-summary{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.75;flex:1;max-width:100%}
.result-link{font-size:var(--text-xs);font-weight:600;color:var(--navy-700);margin-top:auto}
.result-link:hover{color:var(--color-accent)}

/* Inline video placeholder */
.inline-video-placeholder{background:var(--navy-900);border-radius:var(--radius-xl);aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8);color:rgba(255,255,255,0.7)}
.video-play-icon{flex-shrink:0}
.inline-video-label{font-size:var(--text-sm);line-height:1.75;color:rgba(255,255,255,0.5)}
.inline-video-label strong{color:rgba(255,255,255,0.8);display:block;margin-bottom:var(--space-2)}
@media(max-width:600px){.inline-video-placeholder{flex-direction:column;aspect-ratio:auto;min-height:200px}}

/* FAQ */
.faq-section{display:flex;flex-direction:column;gap:var(--space-5)}
.faq-intro{font-size:var(--text-base);color:var(--color-text-muted);max-width:100%}
.faq-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}
.faq-item{border-bottom:1px solid var(--color-divider)}
.faq-item:last-child{border-bottom:none}
.faq-question{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);cursor:pointer;font-family:var(--font-display);font-size:var(--text-base);font-weight:600;color:var(--navy-800);list-style:none;background:var(--color-bg);transition:background var(--transition);user-select:none}
.faq-question:hover{background:var(--navy-50)}
.faq-question::-webkit-details-marker{display:none}
.faq-chevron{flex-shrink:0;transition:transform var(--transition);color:var(--color-text-faint)}
details[open] .faq-chevron{transform:rotate(180deg)}
details[open] .faq-question{background:var(--navy-50)}
.faq-answer{padding:0 var(--space-6) var(--space-6);background:var(--navy-50)}
.faq-answer p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.8;max-width:100%}

/* ─── SIDEBAR ─── */
.page-sidebar{display:flex;flex-direction:column}
.sidebar-sticky{position:sticky;top:88px;display:flex;flex-direction:column;gap:var(--space-6)}
.sidebar-contact-card{background:var(--navy-800);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}
.sidebar-contact-header{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.5)}
.sidebar-contact-header svg{color:var(--crimson-500);flex-shrink:0}
.sidebar-contact-body{font-size:var(--text-sm);color:rgba(255,255,255,0.65);line-height:1.7;max-width:100%}
.sidebar-cta-btn{width:100%;justify-content:center;background:var(--crimson-500);border-color:var(--crimson-500)}
.sidebar-cta-btn:hover{background:var(--crimson-700);border-color:var(--crimson-700)}
.sidebar-divider{height:1px;background:rgba(255,255,255,0.1)}
.sidebar-phone-link{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:700;color:#fff;padding:var(--space-3) 0;transition:opacity var(--transition)}
.sidebar-phone-link:hover{opacity:0.75}
.sidebar-response{font-size:var(--text-xs);color:rgba(255,255,255,0.35);line-height:1.6;max-width:100%}
.sidebar-related{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-5);border:1px solid var(--color-divider)}
.sidebar-related-title{font-size:var(--text-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}
.sidebar-related ul{display:flex;flex-direction:column;gap:0;list-style:none}
.sidebar-related li{border-bottom:1px solid var(--color-divider)}
.sidebar-related li:last-child{border-bottom:none}
.sidebar-related a{display:block;padding:var(--space-3) 0;font-size:var(--text-sm);color:var(--navy-700);font-weight:500;transition:color var(--transition)}
.sidebar-related a:hover{color:var(--color-accent)}
.sidebar-credentials{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-5);border:1px solid var(--color-divider)}
.sidebar-credentials-title{font-size:var(--text-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}
.sidebar-credentials ul{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}
.sidebar-credentials li{font-size:var(--text-xs);color:var(--color-text-muted);padding-left:var(--space-4);position:relative;max-width:100%}
.sidebar-credentials li::before{content:'·';position:absolute;left:0;color:var(--color-accent);font-weight:700}

/* ═══ BOTTOM CTA ═══ */
.bottom-cta{background:var(--navy-900);padding-block:clamp(var(--space-16),8vw,var(--space-24))}
.bottom-cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-10),6vw,var(--space-20));align-items:start}
@media(max-width:800px){.bottom-cta-inner{grid-template-columns:1fr}}
.cta-text{display:flex;flex-direction:column;gap:var(--space-5)}
.cta-headline{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:#fff;line-height:1.1}
.cta-sub{font-size:var(--text-base);color:rgba(255,255,255,0.65);line-height:1.8;max-width:50ch}
.cta-contact-options{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-2)}
.cta-option{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:rgba(255,255,255,0.55)}
.cta-phone-link{display:inline-flex;align-items:center;gap:var(--space-1);vertical-align:middle;color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,0.4)}
.cta-phone-link:hover{border-bottom-color:#fff}
.cta-phone-link svg{flex-shrink:0}
