/*
Theme Name: Kaze (WPVibe Draft)
Theme URI: https://wordpress.com/theme/kaze/
Author: The Appeals Chair / WPVibe Draft
Description: Premium modern business consultancy presentation for The Appeals Chair.
Version: 1.0.6
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kaze
*/

:root {
  --tac-navy: #10253b;
  --tac-navy-deep: #0b1b2b;
  --tac-sage: #a8b9aa;
  --tac-sage-light: #dce5de;
  --tac-cream: #f7f6f2;
  --tac-paper: #ffffff;
  --tac-ink: #17202a;
  --tac-muted: #64707b;
  --tac-line: #dfe4e6;
  --tac-max: 1240px;
}

html { scroll-behavior: smooth; }
body {
  background: var(--tac-cream);
  color: var(--tac-ink);
  font-family: "Manrope", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.site-shell { overflow: hidden; }
.tac-container { width: min(var(--tac-max), calc(100% - 48px)); margin-inline: auto; }
.tac-header { position: relative; z-index: 10; border-bottom: 1px solid rgba(16,37,59,.10); background: rgba(247,246,242,.96); }
.tac-header-inner { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.tac-brand { color: var(--tac-navy); text-decoration: none !important; display: inline-flex; flex-direction: column; line-height: 1; }
.tac-brand-name { font-family: Georgia, "Times New Roman", serif; font-size: 1.42rem; font-weight: 500; letter-spacing: -.035em; }
.tac-brand-tag { margin-top: 7px; font-size: .56rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--tac-muted); }
.tac-nav { display: flex; align-items: center; gap: 30px; }
.tac-nav a { color: var(--tac-navy); font-size: .82rem; font-weight: 650; text-decoration: none !important; }
.tac-nav a:hover { color: #526d61; }
.tac-nav .tac-nav-cta { color: #fff; background: var(--tac-navy); padding: 13px 20px; border-radius: 999px; }

.tac-hero { background: var(--tac-cream); padding: 72px 0 80px; }
.tac-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); gap: 64px; align-items: center; }
.tac-eyebrow { margin: 0 0 20px; color: #5e7869; font-size: .72rem; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.tac-hero h1 { margin: 0; max-width: 760px; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.2rem, 5.4vw, 5.7rem); line-height: .98; letter-spacing: -.055em; font-weight: 500; }
.tac-hero-copy { max-width: 620px; margin: 28px 0 0; color: #4d5963; font-size: 1.08rem; line-height: 1.75; }
.tac-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.tac-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 23px; border-radius: 999px; background: var(--tac-navy); color: #fff !important; text-decoration: none !important; font-size: .82rem; font-weight: 750; letter-spacing: .01em; transition: transform .2s ease, background .2s ease; }
.tac-button:hover { transform: translateY(-2px); background: #1d3c58; }
.tac-button-secondary { background: transparent; color: var(--tac-navy) !important; border: 1px solid #bfc7cb; }
.tac-button-secondary:hover { background: #fff; }

.tac-hero-card { position: relative; min-height: 520px; border-radius: 4px; overflow: hidden; background: var(--tac-navy); box-shadow: 0 28px 70px rgba(16,37,59,.14); }
.tac-hero-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: grayscale(1) sepia(.08) hue-rotate(165deg) saturate(.58) brightness(1.14) contrast(.86); }
.tac-card-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(247,246,242,.05), rgba(16,37,59,.08)); mix-blend-mode: multiply; }

.tac-pillars { background: var(--tac-navy); color: #fff; padding: 32px 0; }
.tac-pillars-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.tac-pillar { padding: 15px 28px; border-left: 1px solid rgba(255,255,255,.15); }
.tac-pillar:first-child { border-left: 0; padding-left: 0; }
.tac-pillar strong { display: block; font-size: .88rem; letter-spacing: .01em; }
.tac-pillar span { display: block; margin-top: 5px; color: rgba(255,255,255,.6); font-size: .74rem; }

.tac-section { padding: 115px 0; }
.tac-section-light { background: #fff; }
.tac-section-sage { background: var(--tac-sage-light); }
.tac-section-head { max-width: 720px; }
.tac-section h2 { margin: 0; color: var(--tac-navy); font-size: clamp(2.3rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 680; }
.tac-lead { margin: 23px 0 0; color: #53606a; font-size: 1rem; line-height: 1.75; }
.tac-two-col { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; align-items: start; }
.tac-rule-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--tac-line); }
.tac-rule-list li { padding: 25px 0; border-bottom: 1px solid var(--tac-line); display: grid; grid-template-columns: 34px 1fr; gap: 20px; }
.tac-rule-list b { color: #6b8275; font-size: .72rem; letter-spacing: .08em; }
.tac-rule-list strong { display: block; color: var(--tac-navy); font-size: 1.08rem; }
.tac-rule-list span { display: block; margin-top: 6px; color: var(--tac-muted); font-size: .86rem; line-height: 1.6; }

.tac-process-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; margin-top: 58px; background: rgba(16,37,59,.13); }
.tac-process-step { background: var(--tac-cream); min-height: 250px; padding: 30px; }
.tac-process-no { color: #6b8275; font-size: .68rem; font-weight: 800; letter-spacing: .12em; }
.tac-process-step h3 { margin: 58px 0 10px; color: var(--tac-navy); font-size: 1.12rem; letter-spacing: -.02em; }
.tac-process-step p { margin: 0; color: var(--tac-muted); font-size: .82rem; line-height: 1.65; }
.tac-section p { color: #53606a; font-size: .96rem; line-height: 1.8; }
.tac-section-dark { background: var(--tac-navy); color: #fff; }
.tac-section-dark h2 { color: #fff; }
.tac-section-dark .tac-eyebrow { color: var(--tac-sage); }
.tac-section-dark p, .tac-section-dark .tac-lead { color: rgba(255,255,255,.72); }
.tac-fee-list { border-top: 1px solid var(--tac-line); }
.tac-fee-item { padding: 24px 0; border-bottom: 1px solid var(--tac-line); display: grid; grid-template-columns: 150px 1fr; column-gap: 24px; }
.tac-fee-item strong { color: var(--tac-navy); font-size: 1.2rem; }
.tac-fee-item span { color: var(--tac-ink); font-weight: 650; }
.tac-fee-item small { grid-column: 2; margin-top: 5px; color: var(--tac-muted); font-size: .78rem; }
.tac-fee-list > p { margin: 22px 0 0; font-size: .84rem; }

.tac-testimonial { padding: 105px 0; background: var(--tac-cream); }
.tac-testimonial-inner { max-width: 980px; }
.tac-testimonial .tac-eyebrow { margin-bottom: 28px; }
.tac-testimonial blockquote { margin: 0; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.8rem, 3.2vw, 3.15rem); line-height: 1.16; letter-spacing: -.035em; font-weight: 500; }
.tac-testimonial-continuation { margin-top: 22px !important; font-size: clamp(1.25rem, 2vw, 1.65rem) !important; line-height: 1.55 !important; letter-spacing: -.015em !important; }
.tac-testimonial cite { display: block; margin-top: 30px; color: #5e7869; font-style: normal; font-size: .72rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }

.tac-cta { padding: 95px 0; background: var(--tac-sage-light); }
.tac-cta-grid { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.tac-cta h2 { max-width: 720px; }
.tac-cta p { max-width: 570px; }

.tac-footer { padding: 55px 0 35px; background: #0b1b2b; color: #fff; }
.tac-footer-grid { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; }
.tac-footer .tac-brand { color: #fff; }
.tac-footer .tac-brand-tag { color: rgba(255,255,255,.48); }
.tac-footer-meta { text-align: right; color: rgba(255,255,255,.55); font-size: .72rem; line-height: 1.8; }
.tac-footer-meta a { color: #fff; text-decoration: none; }
.tac-footer-bottom { margin-top: 45px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.38); font-size: .66rem; }

.tac-about-hero { background: var(--tac-cream); padding: 88px 0 105px; }
.tac-about-hero-grid { display: grid; grid-template-columns: 1fr .9fr; gap: 72px; align-items: center; }
.tac-about-title { max-width: 680px; margin: 0; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.2rem, 5.2vw, 5.4rem); line-height: .99; letter-spacing: -.055em; font-weight: 500; }
.tac-about-intro { max-width: 620px; margin: 28px 0 0; color: #4d5963; font-size: 1.08rem; line-height: 1.75; }
.tac-about-photo { min-height: 500px; overflow: hidden; background: var(--tac-navy); box-shadow: 0 28px 70px rgba(16,37,59,.14); }
.tac-about-photo img { display: block; width: 100%; height: 100%; min-height: 500px; object-fit: cover; filter: grayscale(1) sepia(.08) hue-rotate(165deg) saturate(.58) brightness(1.14) contrast(.86); }
.tac-about-split { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; align-items: start; }
.tac-section-sage .tac-two-col { align-items: center; }
.tac-about-introduction { padding: 115px 0; }
.tac-about-introduction h2, .tac-about-role h2, .tac-about-credentials h2, .tac-about-approach h2 { margin: 0; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.3rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 500; }
.tac-about-body { max-width: 720px; color: #53606a; font-size: 1rem; line-height: 1.8; }
.tac-about-body p { margin: 0 0 22px; }
.tac-about-body p:last-child { margin-bottom: 0; }
.tac-about-role { padding: 115px 0; background: var(--tac-sage-light); }
.tac-about-credentials { padding: 115px 0; }
.tac-about-section-head { max-width: 780px; }
.tac-about-points { margin-top: 58px; border-top: 1px solid var(--tac-line); }
.tac-about-point { display: grid; grid-template-columns: 55px 1fr; gap: 24px; padding: 30px 0; border-bottom: 1px solid var(--tac-line); }
.tac-about-point > span { color: #6b8275; font-size: .72rem; font-weight: 800; letter-spacing: .12em; }
.tac-about-point h3 { margin: 0; color: var(--tac-navy); font-size: 1.12rem; letter-spacing: -.02em; }
.tac-about-point p { margin: 7px 0 0; max-width: 760px; color: var(--tac-muted); font-size: .88rem; line-height: 1.65; }
.tac-about-approach { padding: 115px 0; background: var(--tac-navy); color: #fff; }
.tac-about-approach h2 { color: #fff; }
.tac-about-approach .tac-eyebrow { color: var(--tac-sage); }
.tac-about-approach-body { color: rgba(255,255,255,.68); }
.tac-about-cta { padding: 95px 0; background: var(--tac-sage-light); }
.tac-about-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.tac-about-cta h2 { max-width: 720px; margin: 0; color: var(--tac-navy); font-size: clamp(2.3rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 680; }
.tac-about-cta p:not(.tac-eyebrow) { max-width: 570px; margin: 22px 0 0; color: #53606a; line-height: 1.75; }

@media (max-width: 900px) {
  .tac-nav a:not(.tac-nav-cta) { display: none; }
  .tac-hero { padding: 58px 0 68px; }
  .tac-hero-grid, .tac-two-col { grid-template-columns: 1fr; gap: 50px; }
  .tac-hero-card { min-height: 440px; }
  .tac-pillars-grid { grid-template-columns: repeat(2,1fr); }
  .tac-pillar { border-left: 0; border-top: 1px solid rgba(255,255,255,.15); padding: 18px 0; }
  .tac-pillar:nth-child(-n+2) { border-top: 0; }
  .tac-process-grid { grid-template-columns: repeat(2,1fr); }
  .tac-cta-grid { align-items: start; flex-direction: column; }
}

@media (max-width: 620px) {
  .tac-section-sage .tac-two-col { align-items: start; }
  .tac-about-hero { padding: 60px 0 72px; }
  .tac-about-hero-grid, .tac-about-split, .tac-about-approach-grid { grid-template-columns: 1fr; gap: 44px; }
  .tac-about-photo, .tac-about-photo img { min-height: 380px; }
  .tac-about-introduction, .tac-about-role, .tac-about-credentials, .tac-about-approach { padding: 78px 0; }
  .tac-about-points { margin-top: 42px; }
  .tac-about-cta { padding: 78px 0; }
  .tac-about-cta-inner { align-items: start; flex-direction: column; gap: 30px; }
}
  .tac-container { width: min(var(--tac-max), calc(100% - 32px)); }
  .tac-header-inner { min-height: 76px; }
  .tac-brand-name { font-size: 1.16rem; }
  .tac-brand-tag { font-size: .48rem; }
  .tac-nav-cta { padding: 11px 15px !important; font-size: .72rem !important; }
  .tac-hero h1 { font-size: clamp(2.8rem, 14vw, 4.4rem); }
  .tac-hero-card { min-height: 380px; }
  .tac-section { padding: 78px 0; }
  .tac-process-grid { grid-template-columns: 1fr; }
  .tac-footer-grid { grid-template-columns: 1fr; }
  .tac-footer-meta { text-align: left; }
}

.tac-services-hero { padding: 88px 0 105px; background: var(--tac-cream); color: var(--tac-navy); }
.tac-services-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 90px; align-items: center; }
.tac-services-hero .tac-eyebrow { color: #5e7869; }
.tac-services-title { max-width: 800px; margin: 0; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.2rem, 5.4vw, 5.6rem); line-height: .98; letter-spacing: -.055em; font-weight: 500; }
.tac-services-intro { max-width: 690px; margin: 28px 0 0; color: #4d5963; font-size: 1.08rem; line-height: 1.75; }
.tac-services-hero .tac-button { background: var(--tac-navy); color: #fff !important; }
.tac-services-hero .tac-button-secondary { border-color: #bfc7cb; background: transparent; color: var(--tac-navy) !important; }
.tac-services-hero .tac-button-secondary:hover { background: #fff; }
.tac-services-hero-note { padding: 34px 0 34px 42px; border-left: 1px solid var(--tac-line); }
.tac-services-note-label { margin: 0 0 18px; color: #5e7869; font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.tac-services-hero-note p:last-child { margin: 0; color: #53606a; font-size: 1rem; line-height: 1.8; }
.tac-services-role { padding: 115px 0; }
.tac-services-split { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; align-items: center; }
.tac-services-role h2, .tac-services-cases h2, .tac-services-process h2, .tac-services-practical h2, .tac-services-cta h2 { margin: 0; color: var(--tac-navy); font-size: clamp(2.3rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 680; }
.tac-services-body { max-width: 720px; }
.tac-services-body p { margin: 0 0 22px; color: #53606a; font-size: 1rem; line-height: 1.8; }
.tac-services-body p:last-child { margin-bottom: 0; }
.tac-services-cases { padding: 115px 0; background: var(--tac-cream); }
.tac-services-cards { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; margin-top: 58px; background: var(--tac-line); }
.tac-services-card { min-height: 250px; padding: 32px; background: #fff; }
.tac-services-card > span { color: #6b8275; font-size: .7rem; font-weight: 800; letter-spacing: .12em; }
.tac-services-card h3 { margin: 55px 0 10px; color: var(--tac-navy); font-size: 1.2rem; letter-spacing: -.025em; }
.tac-services-card p { max-width: 500px; margin: 0; color: var(--tac-muted); font-size: .88rem; line-height: 1.7; }
.tac-services-process { padding: 115px 0; }
.tac-services-process-head { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; align-items: end; }
.tac-services-process-head .tac-lead { margin: 0; }
.tac-services-process-grid { grid-template-columns: repeat(5,1fr); }
.tac-services-process-grid .tac-process-step { min-height: 290px; }
.tac-services-practical { padding: 115px 0; }
.tac-services-points { border-top: 1px solid var(--tac-line); }
.tac-services-point { display: grid; grid-template-columns: 55px 1fr; gap: 24px; padding: 28px 0; border-bottom: 1px solid var(--tac-line); }
.tac-services-point > span { color: #6b8275; font-size: .7rem; font-weight: 800; letter-spacing: .12em; }
.tac-services-point h3 { margin: 0; color: var(--tac-navy); font-size: 1.1rem; letter-spacing: -.02em; }
.tac-services-point p { max-width: 720px; margin: 7px 0 0; color: var(--tac-muted); font-size: .88rem; line-height: 1.7; }
.tac-services-cta { padding: 95px 0; background: var(--tac-sage-light); }
.tac-services-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.tac-services-cta p:not(.tac-eyebrow) { max-width: 570px; margin: 22px 0 0; color: #53606a; line-height: 1.75; }

.tac-contact-hero { padding: 88px 0 105px; background: var(--tac-cream); }
.tac-contact-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 90px; align-items: center; }
.tac-contact-title { max-width: 800px; margin: 0; color: var(--tac-navy); font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.2rem, 5.4vw, 5.6rem); line-height: .98; letter-spacing: -.055em; font-weight: 500; }
.tac-contact-intro { max-width: 690px; margin: 28px 0 0; color: #4d5963; font-size: 1.08rem; line-height: 1.75; }
.tac-contact-card { padding: 40px; background: var(--tac-navy); color: #fff; }
.tac-contact-card-label { margin: 0 0 18px; color: var(--tac-sage); font-size: .7rem; font-weight: 800; letter-spacing: .16em; }
.tac-contact-card h2 { margin: 0; color: #fff; font-size: 2rem; line-height: 1.1; }
.tac-contact-card p:not(.tac-contact-card-label) { color: rgba(255,255,255,.72); line-height: 1.75; }
.tac-contact-card .tac-button { margin-top: 12px; background: #fff; color: var(--tac-navy) !important; }
.tac-contact-details { padding: 115px 0; }
.tac-contact-split { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; align-items: center; }
.tac-contact-details h2, .tac-contact-cta h2 { margin: 0; color: var(--tac-navy); font-size: clamp(2.3rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 680; }
.tac-contact-body { border-top: 1px solid var(--tac-line); }
.tac-contact-detail { padding: 25px 0; border-bottom: 1px solid var(--tac-line); }
.tac-contact-detail > span { display: block; margin-bottom: 8px; color: #6b8275; font-size: .7rem; font-weight: 800; letter-spacing: .14em; }
.tac-contact-detail p, .tac-contact-detail a { margin: 0; color: var(--tac-ink); font-size: 1rem; line-height: 1.7; text-decoration: none; }
.tac-contact-detail a { color: var(--tac-navy); font-weight: 700; }
.tac-contact-cta { padding: 95px 0; background: var(--tac-sage-light); }
.tac-contact-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.tac-contact-cta p:not(.tac-eyebrow) { max-width: 570px; margin: 22px 0 0; color: #53606a; line-height: 1.75; }

@media (max-width: 900px) {
  .tac-services-hero-grid, .tac-services-split, .tac-services-process-head, .tac-contact-hero-grid, .tac-contact-split { grid-template-columns: 1fr; gap: 50px; }
  .tac-services-hero-note { padding: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.2); padding-top: 30px; }
  .tac-services-process-grid { grid-template-columns: repeat(2,1fr); }
  .tac-services-cta-inner { align-items: start; flex-direction: column; }
}

@media (max-width: 620px) {
  .tac-services-hero, .tac-services-role, .tac-services-cases, .tac-services-process, .tac-services-practical, .tac-contact-hero, .tac-contact-details { padding: 78px 0; }
  .tac-services-title, .tac-contact-title { font-size: clamp(2.8rem, 14vw, 4.4rem); }
  .tac-services-cards, .tac-services-process-grid { grid-template-columns: 1fr; }
  .tac-services-card { min-height: 220px; }
  .tac-services-cta, .tac-contact-cta { padding: 78px 0; }
  .tac-contact-cta-inner { align-items: start; flex-direction: column; }
}
