/*
Theme Name: Alder Advisory
Theme URI: https://wpamelia.com/
Author: Melograno Ventures
Author URI: https://wpamelia.com/
Description: A custom WordPress theme for Alder Advisory with Amelia Booking integration.
Version: 1.13.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alder-advisory
*/

@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Source+Sans+3:wght@400;500;600;700&display=swap');

:root {
  --primary: #1c1917;
  --accent: #d4a017;
  --text: #1c1917;
  --bg: #f5f1e8;
  --surface: #ede6d6;
  --surface-alt: #e3d9c2;
  --muted: #6b6459;
  --border: #ddd3bf;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: 'Source Sans 3', sans-serif;
  font-size: 17px;
  line-height: 1.7;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Libre Baskerville', serif;
  color: var(--primary);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
}

h1 { font-size: clamp(2.4rem, 4.5vw, 4rem); }
h2 { font-size: clamp(1.9rem, 3vw, 2.6rem); }
h3 { font-size: clamp(1.2rem, 1.6vw, 1.5rem); }

a { color: var(--accent); }

.entry-content p,
.approach-section p,
.process-section p,
.proof-section p {
  color: var(--text);
}

/* --- Header --- */
.site-header {
  background: var(--bg);
  border-bottom: 1px solid var(--border);
}

.site-logo-name {
  font-family: 'Libre Baskerville', serif;
  color: var(--primary);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.01em;
}

.site-logo-descriptor {
  color: var(--muted);
  font-family: 'Source Sans 3', sans-serif;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.site-header nav a {
  color: var(--primary);
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 600;
  font-size: 0.95rem;
  transition: color 200ms ease;
}

.site-header nav a:hover,
.site-header nav a:focus {
  color: var(--accent);
}

.header-cta {
  background: var(--accent);
  color: var(--primary);
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 700;
  padding: 0.75rem 1.5rem;
  border-radius: 3px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  transition: transform 200ms ease, box-shadow 200ms ease;
  box-shadow: 0 2px 8px rgba(28, 25, 23, 0.15);
}

.header-cta:hover,
.header-cta:focus {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(28, 25, 23, 0.22);
  color: var(--primary);
}

/* --- Footer --- */
.site-footer {
  background: var(--primary);
  color: var(--bg);
}

.site-footer a {
  color: var(--accent);
}

/* --- Buttons (Gutenberg core) --- */
.wp-block-button__link {
  font-family: 'Source Sans 3', sans-serif;
  font-weight: 700;
  border-radius: 3px;
  padding: 0.9rem 1.9rem;
  min-height: 44px;
  background: var(--accent);
  color: var(--primary);
  transition: transform 200ms ease, box-shadow 200ms ease;
}

.wp-block-button__link:hover,
.wp-block-button__link:focus {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(28, 25, 23, 0.25);
}

.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  border: 2px solid var(--primary);
  color: var(--primary);
}

/* Outline buttons on dimmed cover must stay light */
.wp-block-cover .wp-block-button.is-style-outline .wp-block-button__link {
  border-color: #fff;
  color: #fff;
  background: transparent;
}

/* --- Hero --- */
.wp-block-cover.hero-cover {
  background: var(--primary);
}

.wp-block-cover.hero-cover .wp-block-cover__background {
  opacity: 0.55 !important;
}

.hero-cover h1 {
  color: #fff;
  max-width: 20ch;
}

.hero-cover p {
  color: #f2ece0;
  font-size: 1.15rem;
  max-width: 46ch;
}

.hero-cover .wp-block-buttons {
  gap: 1rem;
}

/* --- Packages (offering) --- */
.packages-section {
  background: var(--bg);
  padding: 100px 0;
}

.packages-section > .wp-block-group__inner-container {
  display: block;
}

.packages-section h2 {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 3rem;
}

.packages-section .wp-block-columns {
  gap: 2rem;
}

.packages-section .wp-block-column {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 2rem 1.6rem;
}

.packages-section .wp-block-column h3 {
  font-size: 1.15rem;
  margin-bottom: 0.5rem;
}

.packages-section .wp-block-column p {
  color: var(--muted);
  font-size: 0.98rem;
}

/* --- Booking --- */
.booking-section {
  background: var(--surface);
  padding: 100px 0;
}

.booking-section h2 {
  color: var(--primary);
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 2.5rem;
}

/* --- Approach (Who We Work With) --- */
.approach-section {
  background: var(--bg);
  padding: 100px 0;
}

.approach-section h2 {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 3rem;
}

.approach-section .wp-block-columns {
  gap: 2rem;
}

.approach-section .wp-block-column {
  border-left: 3px solid var(--accent);
  padding-left: 1.4rem;
}

.approach-section .wp-block-column h3 {
  font-size: 1.05rem;
}

.approach-section .wp-block-column p {
  color: var(--muted);
}

/* --- Process (How It Works) --- */
.process-section {
  background: var(--surface-alt);
  padding: 100px 0;
}

.process-section h2 {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 2.5rem;
}

.process-section ol {
  max-width: 36rem;
  margin-inline: auto;
  padding-left: 1.4rem;
  color: var(--text);
}

.process-section li {
  margin-bottom: 0.9rem;
  font-size: 1.02rem;
}

.process-section p.has-text-align-center {
  max-width: 36rem;
  margin-inline: auto;
  color: var(--muted);
  font-style: italic;
}

/* --- Proof (Credentials & Testimonial) --- */
.proof-section {
  background: var(--primary);
  padding: 100px 0;
}

.proof-section h2 {
  color: var(--bg);
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 2rem;
}

.proof-section p.has-text-align-center {
  color: #d8cfbc;
  max-width: 50ch;
  margin-inline: auto;
}

.proof-section .stat-number {
  color: var(--accent);
  font-family: 'Libre Baskerville', serif;
  font-weight: 700;
  font-size: 1.4em;
}

.proof-section .wp-block-quote {
  border-left: 3px solid var(--accent);
  max-width: 46rem;
  margin: 2.5rem auto 0;
  padding-left: 1.6rem;
  color: #f2ece0;
  font-family: 'Libre Baskerville', serif;
  font-style: italic;
  font-size: 1.2rem;
}

.proof-section .wp-block-quote cite {
  display: block;
  margin-top: 0.8rem;
  color: var(--accent);
  font-family: 'Source Sans 3', sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.9rem;
}

@media (max-width: 768px) {
  .packages-section,
  .booking-section,
  .approach-section,
  .process-section,
  .proof-section {
    padding: 64px 0;
  }

  .packages-section .wp-block-columns,
  .approach-section .wp-block-columns {
    flex-direction: column;
  }
}