/*
Theme Name: Aviator Aircraft Group
Theme URI: https://example.com/aviator
Author: Your Team
Author URI: https://example.com
Description: Tailwind-based theme for Aviator Aircraft Group with Aircraft custom post type and menus.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: aviator
*/

/* Custom helpers (kept minimal; Tailwind via CDN handles most styles) */
.rounded-button { border-radius: 9999px; }
.services-swiper .swiper-pagination-bullet { background: #c8a250; opacity: .4; }
.services-swiper .swiper-pagination-bullet-active { opacity: 1; }

/* CSS variables driven by Customizer */
:root {
  --color-primary: #c8a250;
  --color-dark: #0c2340;
  --color-footer-bg: #111827; /* gray-900 */
  --font-body: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  --font-heading: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

body { color: var(--color-dark); font-family: var(--font-body); }
h1, h2, h3, h4, h5, h6 { color: var(--color-dark); font-family: var(--font-heading); font-weight: 700; }
a { color: inherit; }
a:hover { color: var(--color-primary); }

/* Ensure headings can be white in dark sections */
.text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white h6 {
  color: #fff !important;
}

/* Brand utility classes to use in templates (optional) */
.text-brand { color: var(--color-dark) !important; }
.text-accent { color: var(--color-primary) !important; }
.bg-brand { background-color: var(--color-dark) !important; }
.bg-accent { background-color: var(--color-primary) !important; }
.hover\:bg-accent:hover { background-color: var(--color-primary) !important; }
.hover\:text-accent:hover { color: var(--color-primary) !important; }

/* Override common Tailwind arbitrary color classes used in templates to honor Customizer */
.text-\[\#0c2340\] { color: var(--color-dark) !important; }
.bg-\[\#0c2340\] { background-color: var(--color-dark) !important; }
.text-\[\#c8a250\] { color: var(--color-primary) !important; }
.bg-\[\#c8a250\] { background-color: var(--color-primary) !important; }
.hover\:bg-\[\#b89040\]:hover { background-color: var(--color-primary) !important; }
.hover\:text-\[\#c8a250\]:hover { color: var(--color-primary) !important; }

/* Footer background driven by variable */
footer.bg-gray-900 { background-color: var(--color-footer-bg) !important; }

/* Scale custom logo nicely in header */
header .custom-logo {
  max-height: 48px;
  height: auto;
  width: auto;
}

/* Contact Form 7 theme styles (basic) */
.wpcf7-form .wpcf7-form-control:not(.wpcf7-submit) {
  width: 100%;
  border: 1px solid #d1d5db; /* gray-300 */
  border-radius: .375rem; /* rounded-md */
  padding: .75rem 1rem; /* px-4 py-3 */
}
.wpcf7-form textarea.wpcf7-form-control { min-height: 130px; }
.wpcf7-form .wpcf7-submit {
  display: inline-block;
  width: 100%;
  background: var(--color-primary);
  color: #fff;
  font-weight: 500;
  padding: .75rem 1.5rem;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
}
.wpcf7-form .wpcf7-submit:hover { filter: brightness(0.95); }
.wpcf7-form .wpcf7-not-valid-tip { color: #b91c1c; font-size: .875rem; margin-top: .25rem; }
.wpcf7-form .wpcf7-response-output { margin-top: .75rem; border-radius: .375rem; padding: .75rem 1rem; }

/* Content defaults for post/page body */
.entry-content p { margin: 1rem 0; }
.entry-content h1 { font-size: 2rem; line-height: 1.2; margin: 1.5rem 0 0.75rem; }
.entry-content h2 { font-size: 1.75rem; line-height: 1.25; margin: 1.5rem 0 0.75rem; }
.entry-content h3 { font-size: 1.5rem; line-height: 1.3; margin: 1.25rem 0 0.5rem; }
.entry-content h4 { font-size: 1.25rem; line-height: 1.35; margin: 1rem 0 0.5rem; }
.entry-content h5 { font-size: 1.125rem; line-height: 1.4; margin: 0.75rem 0 0.5rem; }
.entry-content h6 { font-size: 1rem; line-height: 1.45; margin: 0.5rem 0 0.5rem; }
.entry-content ul, .entry-content ol { margin: 1rem 0 1rem 1.25rem; }
.entry-content li + li { margin-top: .25rem; }
.entry-content blockquote { margin: 1.25rem 0; padding-left: 1rem; border-left: 4px solid var(--color-primary); color: #374151; }
.entry-content a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }

/* Sidebar widgets */
.widget-area .widget {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 0.75rem;
  padding: 1.75rem;
  box-shadow: 0 20px 45px -30px rgba(12, 35, 64, 0.4);
}

.widget-area .widget-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-dark);
  margin-bottom: 1rem;
}

.widget-area .widget p {
  color: #4b5563;
  line-height: 1.6;
  margin-bottom: 0;
}

.widget-area .widget ul,
.widget-area .widget ol {
  margin: 1rem 0 0;
  padding-left: 1.2rem;
  color: #4b5563;
  line-height: 1.6;
}

.widget-area .widget li + li {
  margin-top: 0.4rem;
}

.widget-area .widget a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.widget-area .widget a:hover {
  color: var(--color-primary);
}

.widget-area .widget-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.25rem;
  padding: 0.75rem 1.75rem;
  border-radius: 9999px;
  background-color: var(--color-dark);
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.widget-area .widget-cta:hover {
  background-color: #142f5a;
  transform: translateY(-1px);
}

/* Mobile menu fixes */
@media (max-width: 768px) {
  /* Fix burger menu icon color - make it gold */
  .mobile-menu-icon {
    color: #c8a250 !important;
  }
  
  /* Fix mobile menu positioning to account for fixed header */
  #mobile-menu {
    position: fixed;
    top: 72px; /* Adjust based on header height */
    left: 0;
    right: 0;
    z-index: 40;
    max-height: calc(100vh - 72px);
    overflow-y: auto;
  }
  
  /* Fix hero section padding on mobile to prevent button overlap */
  .min-h-\[520px\] {
    min-height: 580px !important;
  }
  
  /* Add more padding to hero content on mobile */
  section[style*="background-image"] .max-w-2xl {
    padding-bottom: 2rem;
  }
}

/* Recent posts thumbnails widget */
.widget .recent-posts-thumbs { list-style: none; padding: 0; margin: 0; }
.widget .recent-posts-thumbs li { display: flex; flex-direction: row; align-items: center; gap: 10px; }
.widget .recent-posts-thumbs li + li { margin-top: 0.75rem; }
.widget .recent-posts-thumbs .thumb { display:block; width: 40px; height: 40px; border-radius: 9999px; overflow: hidden; background: #e5e7eb; flex-shrink: 0; }
.widget .recent-posts-thumbs .thumb img.thumb-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.widget .recent-posts-thumbs .thumb-placeholder { display:block; width: 100%; height: 100%; background: #e5e7eb; }
.widget .recent-posts-thumbs .text { flex: 1 1 auto; min-width: 0; }
.widget .recent-posts-thumbs .title { display:block; color: var(--color-dark); font-weight: 600; line-height: 1.3; text-decoration: none; }
.widget .recent-posts-thumbs .title:hover { color: var(--color-primary); }
.widget .recent-posts-thumbs .meta { display:flex; align-items:center; gap:6px; font-size: .75rem; color: #6b7280; margin-top: 2px; }
.widget .recent-posts-thumbs .meta .fa-calendar-alt { color: #9ca3af; font-size: .8em; }
