/*
Theme Name: Elite Mukayifat Pro - شركة النخبة لشراء وبيع المكيفات بالكويت
Theme URI: https://elite-mukayifat-kw.com
Author: Elite Mukayifat Kuwait Team
Description: ثيم ووردبريس فائق الاحترافية والتطور، مصمم خصيصاً لشركة النخبة لشراء وبيع المكيفات المستعملة والجديدة بالكويت بحسب أعلى معايير تجربة المستخدم والسيو وبسرعة فائقة ومتجاوب 100% مع الهواتف الذكية.
Version: 3.2.0
License: GNU General Public License v2 or later
Text Domain: elite-pro
Tags: rtl-language-support, custom-menu, featured-images, theme-options, kuwait, used-ac, hvac, responsive
*/

/* ==========================================================================
   1. DESIGN TOKENS & COLOR PALETTE
   ========================================================================== */
:root {
  /* Primary Brand Colors */
  --clr-navy-900: #0b1329;       /* Executive Dark Blue */
  --clr-navy-800: #111c38;       /* Card Dark Surface */
  --clr-navy-700: #1a274c;       /* Muted Navy */

  /* Cooling Cyan Accent */
  --clr-cyan-500: #0284c7;       /* Refreshing Ice Cyan */
  --clr-cyan-600: #0369a1;       /* Deep Cyan */
  --clr-cyan-100: #e0f2fe;       /* Ice Blue Light Surface */
  --clr-cyan-50:  #f0f9ff;

  /* Premium Gold / Cash Payout Accent */
  --clr-gold-500: #f59e0b;       /* Golden Cash Highlight */
  --clr-gold-600: #d97706;       /* Deep Gold */
  --clr-gold-100: #fef3c7;       /* Soft Amber Badge */

  /* Status / WhatsApp */
  --clr-whatsapp: #10b981;       /* WhatsApp Green */
  --clr-whatsapp-hover: #059669;

  /* Neutral Tones */
  --clr-white:    #ffffff;
  --clr-bg:       #f8fafc;       /* Main Page Background */
  --clr-surface:  #ffffff;       /* Card Surface */
  --clr-border:   #e2e8f0;       /* Border Divider */
  --clr-text-dark:#0f172a;       /* Primary Heading Text */
  --clr-text-body:#334155;       /* Paragraph Body Text */
  --clr-text-muted:#64748b;      /* Muted Text */

  /* Typography */
  --font-arabic: 'Cairo', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

  /* Elevation Shadows */
  --shadow-sm: 0 2px 4px rgba(15, 23, 42, 0.05);
  --shadow-md: 0 6px 16px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 12px 32px rgba(2, 132, 199, 0.12);
  --shadow-gold: 0 8px 24px rgba(245, 158, 11, 0.28);

  /* Border Radii */
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-pill: 9999px;

  /* Transitions */
  --transition-fast: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ==========================================================================
   2. GLOBAL RESETS & FLUID RESPONSIVE TYPOGRAPHY
   ========================================================================== */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  max-width: 100%;
}

html, body {
  direction: rtl;
  scroll-behavior: smooth;
  font-size: 16px;
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden !important;
  position: relative;
}

body {
  font-family: var(--font-arabic);
  background-color: var(--clr-bg);
  color: var(--clr-text-body);
  line-height: 1.75;
  text-align: right;
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--clr-cyan-500);
  text-decoration: none;
  transition: var(--transition-fast);
}

a:hover {
  color: var(--clr-cyan-600);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Fluid Scalable Typography (Fluid Clamp Fonts) */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-arabic);
  color: var(--clr-text-dark);
  font-weight: 800;
  line-height: 1.25;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

h1 { font-size: clamp(1.6rem, 5vw, 3rem); }
h2 { font-size: clamp(1.35rem, 3.8vw, 2.2rem); }
h3 { font-size: clamp(1.1rem, 2.8vw, 1.5rem); }
h4 { font-size: clamp(1rem, 2vw, 1.2rem); }

p {
  font-size: clamp(0.92rem, 1.8vw, 1.05rem);
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Container */
.container {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  box-sizing: border-box;
}

.section-padding {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

/* ==========================================================================
   3. COMPONENTS & BUTTONS
   ========================================================================== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  padding: 0.85rem 1.8rem;
  font-family: var(--font-arabic);
  font-size: clamp(0.9rem, 1.5vw, 1rem);
  font-weight: 700;
  border-radius: var(--radius-pill);
  cursor: pointer;
  border: 2px solid transparent;
  transition: var(--transition-fast);
  text-align: center;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  word-break: break-word;
}

.btn:hover {
  transform: translateY(-2px);
}

.btn-primary {
  background: linear-gradient(135deg, var(--clr-cyan-500) 0%, var(--clr-cyan-600) 100%);
  color: var(--clr-white) !important;
  box-shadow: 0 4px 14px rgba(2, 132, 199, 0.35);
}

.btn-primary:hover {
  box-shadow: var(--shadow-lg);
  color: var(--clr-white) !important;
}

.btn-gold {
  background: linear-gradient(135deg, var(--clr-gold-500) 0%, var(--clr-gold-600) 100%);
  color: var(--clr-white) !important;
  box-shadow: var(--shadow-gold);
}

.btn-gold:hover {
  box-shadow: 0 10px 28px rgba(245, 158, 11, 0.45);
  color: var(--clr-white) !important;
}

.btn-whatsapp {
  background-color: var(--clr-whatsapp);
  color: var(--clr-white) !important;
  box-shadow: 0 4px 14px rgba(16, 185, 129, 0.3);
}

.btn-whatsapp:hover {
  background-color: var(--clr-whatsapp-hover);
  box-shadow: 0 8px 24px rgba(16, 185, 129, 0.4);
}

.btn-outline {
  border-color: var(--clr-cyan-500);
  color: var(--clr-cyan-500) !important;
  background: transparent;
}

.btn-outline:hover {
  background: var(--clr-cyan-500);
  color: var(--clr-white) !important;
}

.btn-lg {
  padding: 1rem 2.2rem;
  font-size: clamp(1rem, 2vw, 1.15rem);
}

.btn-block {
  width: 100%;
}

/* Badges */
.badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 1.1rem;
  border-radius: var(--radius-pill);
  font-size: clamp(0.8rem, 1.4vw, 0.88rem);
  font-weight: 700;
  max-width: 100%;
}

.badge-gold {
  background-color: var(--clr-gold-100);
  color: #b45309;
}

.badge-cyan {
  background-color: var(--clr-cyan-100);
  color: var(--clr-cyan-600);
}

/* Section Header */
.section-title-wrap {
  text-align: center;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3.5rem;
}

.section-title-wrap p {
  font-size: clamp(0.95rem, 1.8vw, 1.1rem);
  color: var(--clr-text-muted);
  margin-top: 0.5rem;
}

/* Responsive Grids */
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; width: 100%; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; width: 100%; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; width: 100%; }

/* ==========================================================================
   4. HEADER & TOPBAR NAVIGATION
   ========================================================================== */
.top-announcement-bar {
  background-color: var(--clr-navy-900);
  color: #cbd5e1;
  padding: 0.55rem 0;
  font-size: clamp(0.8rem, 1.4vw, 0.88rem);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  width: 100%;
  overflow: hidden;
}

.top-bar-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}

.top-contact-links {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.top-contact-links a {
  color: #f1f5f9;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.top-contact-links a:hover {
  color: var(--clr-gold-500);
}

/* Sticky Header */
.site-pro-header {
  background-color: var(--clr-white);
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: var(--shadow-sm);
  width: 100%;
}

.header-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.85rem 0;
}

.brand-pro-logo {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.brand-logo-icon {
  width: 46px;
  height: 46px;
  background: linear-gradient(135deg, var(--clr-cyan-500) 0%, var(--clr-navy-900) 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--clr-white);
  font-size: 1.5rem;
  box-shadow: 0 4px 12px rgba(2, 132, 199, 0.25);
  flex-shrink: 0;
}

.brand-logo-text {
  font-size: clamp(1.1rem, 2.2vw, 1.3rem);
  font-weight: 900;
  color: var(--clr-navy-900);
  line-height: 1.1;
}

.brand-logo-text span {
  color: var(--clr-cyan-500);
}

.brand-logo-sub {
  font-size: 0.72rem;
  color: var(--clr-text-muted);
  font-weight: 600;
  display: block;
}

/* Nav Menu */
.pro-nav-menu ul {
  display: flex;
  list-style: none;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.pro-nav-menu a {
  color: var(--clr-text-dark);
  font-weight: 700;
  font-size: 0.98rem;
  padding: 0.5rem 0.75rem;
  border-radius: var(--radius-sm);
  transition: var(--transition-fast);
}

.pro-nav-menu a:hover,
.pro-nav-menu li.current-menu-item a {
  color: var(--clr-cyan-500);
  background-color: var(--clr-cyan-50);
}

.pro-nav-menu a.highlight-nav {
  color: var(--clr-gold-600);
  background-color: var(--clr-gold-100);
}

/* Mobile Toggle */
.mobile-nav-toggle {
  display: none;
  background: none;
  border: 1px solid var(--clr-border);
  font-size: 1.5rem;
  padding: 0.4rem 0.75rem;
  border-radius: var(--radius-sm);
  color: var(--clr-text-dark);
  cursor: pointer;
}

/* ==========================================================================
   5. HERO SECTION & VALUATION FORM WIDGET
   ========================================================================== */
.hero-pro-section {
  position: relative;
  background: linear-gradient(135deg, var(--clr-navy-900) 0%, #0369a1 100%);
  color: var(--clr-white);
  padding: 4.5rem 0 5.5rem 0;
  overflow: hidden;
  width: 100%;
}

.hero-bg-overlay {
  position: absolute;
  inset: 0;
  background-image: url('assets/images/hero-bg.jpg');
  background-size: cover;
  background-position: center;
  opacity: 0.18;
}

.hero-pro-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 3rem;
  align-items: center;
  width: 100%;
}

.hero-content-box h1 {
  color: var(--clr-white);
  margin-top: 0.75rem;
  margin-bottom: 1.25rem;
}

.hero-content-box p.hero-subtitle {
  font-size: clamp(1rem, 2vw, 1.15rem);
  color: #e0f2fe;
  line-height: 1.8;
  margin-bottom: 2rem;
}

.hero-highlights-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-bottom: 2.2rem;
  width: 100%;
}

.hero-highlight-item {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 0.85rem 1.1rem;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  box-sizing: border-box;
}

.hero-highlight-item .icon {
  font-size: 1.5rem;
  flex-shrink: 0;
}

.hero-highlight-item strong {
  display: block;
  font-size: 0.95rem;
  color: var(--clr-white);
}

.hero-highlight-item span {
  font-size: 0.8rem;
  color: #cbd5e1;
}

/* Estimator Form Card */
.valuation-form-card {
  background-color: var(--clr-white);
  color: var(--clr-text-dark);
  padding: 2rem;
  border-radius: var(--radius-lg);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  border-top: 5px solid var(--clr-gold-500);
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.valuation-form-card h3 {
  color: var(--clr-navy-900);
  text-align: center;
  font-size: clamp(1.1rem, 2.2vw, 1.25rem);
  margin-bottom: 0.25rem;
}

.valuation-form-card p.form-sub {
  text-align: center;
  color: var(--clr-text-muted);
  font-size: 0.88rem;
  margin-bottom: 1.5rem;
}

.form-group-item {
  margin-bottom: 1.1rem;
  width: 100%;
}

.form-group-item label {
  display: block;
  font-weight: 700;
  font-size: 0.9rem;
  margin-bottom: 0.35rem;
  color: var(--clr-navy-900);
}

.form-control-input {
  width: 100%;
  padding: 0.8rem 1rem;
  border: 1.5px solid var(--clr-border);
  border-radius: var(--radius-sm);
  font-family: inherit;
  font-size: 0.95rem;
  background-color: #f8fafc;
  transition: var(--transition-fast);
  outline: none;
  box-sizing: border-box;
}

.form-control-input:focus {
  border-color: var(--clr-cyan-500);
  background-color: var(--clr-white);
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

/* ==========================================================================
   6. CARDS & SECTIONS
   ========================================================================== */
.pro-card-item {
  background-color: var(--clr-surface);
  border-radius: var(--radius-md);
  padding: 2rem;
  box-shadow: var(--shadow-sm);
  border: 1.5px solid var(--clr-border);
  transition: var(--transition-normal);
  width: 100%;
  box-sizing: border-box;
}

.pro-card-item:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-lg);
  border-color: var(--clr-cyan-100);
}

.pro-card-item.gold-edge {
  border-right: 4px solid var(--clr-gold-500);
}

.card-icon-wrapper {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  background-color: var(--clr-cyan-100);
  color: var(--clr-cyan-600);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}

.pro-card-item.gold-edge .card-icon-wrapper {
  background-color: var(--clr-gold-100);
  color: var(--clr-gold-600);
}

/* Buying Banner */
.buying-focus-banner {
  background: linear-gradient(135deg, var(--clr-navy-900) 0%, #1e293b 100%);
  color: var(--clr-white);
  border-radius: var(--radius-lg);
  padding: 3.5rem 2.5rem;
  box-shadow: var(--shadow-lg);
  width: 100%;
  box-sizing: border-box;
}

.buying-banner-flex {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 3rem;
  align-items: center;
  width: 100%;
}

.buying-banner-flex h2 {
  color: var(--clr-white);
}

.buying-check-list {
  list-style: none;
  margin: 1.5rem 0 2rem 0;
}

.buying-check-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: clamp(0.95rem, 1.8vw, 1.05rem);
  margin-bottom: 0.85rem;
}

.buying-check-list li span.check-mark {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: var(--clr-gold-500);
  color: var(--clr-navy-900);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 0.8rem;
  flex-shrink: 0;
  margin-top: 0.2rem;
}

/* Process Steps */
.step-card-box {
  text-align: center;
  width: 100%;
}

.step-number-circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--clr-cyan-500) 0%, var(--clr-cyan-600) 100%);
  color: var(--clr-white);
  font-size: 1.5rem;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.25rem auto;
  box-shadow: 0 8px 18px rgba(2, 132, 199, 0.3);
}

/* Area Cards */
.area-link-chip {
  background-color: var(--clr-white);
  border: 1.5px solid var(--clr-border);
  padding: 1.25rem;
  border-radius: var(--radius-md);
  text-align: center;
  font-weight: 700;
  color: var(--clr-navy-900);
  transition: var(--transition-fast);
  display: block;
  width: 100%;
  box-sizing: border-box;
}

.area-link-chip:hover {
  background-color: var(--clr-cyan-500);
  border-color: var(--clr-cyan-500);
  color: var(--clr-white);
  transform: translateY(-3px);
  box-shadow: var(--shadow-md);
}

/* FAQ Accordion */
.faq-accordion-item {
  background-color: var(--clr-white);
  border: 1.5px solid var(--clr-border);
  border-radius: var(--radius-md);
  margin-bottom: 1rem;
  overflow: hidden;
  width: 100%;
}

.faq-question-btn {
  width: 100%;
  padding: 1.25rem 1.5rem;
  background: none;
  border: none;
  text-align: right;
  font-family: inherit;
  font-size: clamp(0.95rem, 1.8vw, 1.05rem);
  font-weight: 800;
  color: var(--clr-navy-900);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.faq-answer-panel {
  padding: 0 1.5rem 1.25rem 1.5rem;
  color: var(--clr-text-body);
  font-size: 0.98rem;
  line-height: 1.8;
  display: none;
  border-top: 1px solid var(--clr-border);
}

.faq-accordion-item.active .faq-answer-panel {
  display: block;
}

/* ==========================================================================
   7. FOOTER & FLOATING LEAD BAR
   ========================================================================== */
.site-pro-footer {
  background-color: var(--clr-navy-900);
  color: #94a3b8;
  padding-top: 4.5rem;
  padding-bottom: 2rem;
  border-top: 4px solid var(--clr-cyan-500);
  width: 100%;
  overflow: hidden;
}

.footer-pro-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.5fr;
  gap: 3rem;
  margin-bottom: 3.5rem;
  width: 100%;
}

.footer-col h4 {
  color: var(--clr-white);
  font-size: 1.15rem;
  margin-bottom: 1.5rem;
  position: relative;
  padding-bottom: 0.5rem;
}

.footer-col h4::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40px;
  height: 3px;
  background-color: var(--clr-gold-500);
  border-radius: 2px;
}

.footer-menu-links {
  list-style: none;
}

.footer-menu-links li {
  margin-bottom: 0.75rem;
}

.footer-menu-links a {
  color: #cbd5e1;
}

.footer-menu-links a:hover {
  color: var(--clr-gold-500);
  padding-right: 6px;
}

.footer-bottom-copy {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 1.75rem;
  text-align: center;
  font-size: 0.9rem;
}

/* Sticky Mobile Floating Lead Bar */
.floating-mobile-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--clr-white);
  padding: 0.75rem 1rem;
  box-shadow: 0 -5px 25px rgba(0, 0, 0, 0.15);
  z-index: 9999;
  border-top: 1px solid var(--clr-border);
  width: 100%;
  box-sizing: border-box;
}

.floating-bar-inner {
  display: flex;
  gap: 0.75rem;
  width: 100%;
}

.floating-bar-inner .btn {
  flex: 1;
  padding: 0.75rem;
  font-size: 0.95rem;
}

/* ==========================================================================
   8. COMPREHENSIVE RESPONSIVE MEDIA QUERIES
   ========================================================================== */
@media (max-width: 1024px) {
  .hero-pro-grid, .buying-banner-flex {
    grid-template-columns: 1fr !important;
    gap: 2.5rem;
    width: 100% !important;
  }
  .footer-pro-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 2.5rem;
    width: 100% !important;
  }
  .grid-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .top-bar-flex {
    justify-content: center !important;
    text-align: center !important;
  }
  .top-contact-links {
    justify-content: center !important;
  }
  .pro-nav-menu {
    display: none !important;
  }
  .mobile-nav-toggle {
    display: block !important;
  }
  .floating-mobile-bar {
    display: block !important;
  }
  body {
    padding-bottom: 75px !important;
  }
  .grid-2, .grid-3, .grid-4 {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .footer-pro-grid {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .hero-highlights-list {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .hero-pro-section {
    padding: 3rem 0 4rem 0 !important;
  }
  .valuation-form-card {
    padding: 1.5rem !important;
  }
  .buying-focus-banner {
    padding: 2rem 1.25rem !important;
  }
  .section-padding {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .btn {
    width: 100% !important;
    padding: 0.85rem 1rem !important;
  }
}

@media (max-width: 480px) {
  .container {
    padding-left: 0.85rem !important;
    padding-right: 0.85rem !important;
  }
  .brand-logo-text {
    font-size: 1.15rem !important;
  }
  .brand-logo-icon {
    width: 40px !important;
    height: 40px !important;
    font-size: 1.3rem !important;
  }
  .top-announcement-bar {
    font-size: 0.8rem !important;
  }
  .hero-highlight-item {
    padding: 0.75rem !important;
  }
}

/* Version 3: calm, editorial home layout. */
.elite-home-hero { background:#102c35; color:#e6eff0; padding:76px 0 64px; }
.elite-hero-layout { display:grid; grid-template-columns:1.08fr 1fr; gap:64px; align-items:center; }
.elite-eyebrow { color:#276c70; font-size:.82rem; font-weight:800; letter-spacing:.02em; margin-bottom:20px; }
.elite-home-hero .elite-eyebrow { color:#c4dcd8; }
.elite-hero-copy h1 { color:#fff; font-size:clamp(2.5rem,5.2vw,4.4rem); line-height:1.35; letter-spacing:-.04em; margin-bottom:24px; }
.elite-hero-copy h1 span { color:#efd09a; }
.elite-hero-intro { max-width:530px; color:#d0dddd; line-height:2; font-size:1.08rem; margin-bottom:30px; }
.elite-actions { display:flex; flex-wrap:wrap; gap:12px; }
.elite-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:13px 20px; border-radius:7px; font-weight:800; text-decoration:none; }
.elite-button-gold { background:#efd09a; color:#102c35; }
.elite-button-gold:hover { background:#ffe1ad; color:#102c35; }
.elite-button-light { border:1px solid #709193; color:#fff; }
.elite-button-light:hover { background:#22434b; color:#fff; }
.elite-hero-note { margin:26px 0 0; font-size:.87rem; color:#c0d0d0; }
.elite-hero-photo { margin:0; }
.elite-hero-photo img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:110px 12px 12px 12px; }
.elite-hero-photo figcaption { color:#c0d0d0; font-size:.74rem; padding-top:16px; }
.elite-home-section { padding:88px 0; background:#fff; }
.elite-section-heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:42px; }
.elite-section-heading h2,.elite-request-layout h2,.elite-faq-layout h2 { font-size:clamp(1.8rem,3.2vw,2.6rem); line-height:1.55; color:#102c35; }
.elite-section-heading > p { max-width:365px; color:#53666b; line-height:1.9; }
.elite-services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.elite-service { padding:32px; border:1px solid #dfe7e5; border-radius:12px; background:#fafbf9; display:flex; flex-direction:column; }
.elite-service-label { font-size:.8rem; color:#3e7371; margin-bottom:26px; }
.elite-service h3 { color:#102c35; margin-bottom:16px; }
.elite-service p { color:#53666b; line-height:1.95; margin-bottom:28px; }
.elite-service a { margin-top:auto; font-weight:800; color:#205e60; }
.elite-request-section { background:#f1f4ef; }
.elite-request-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:90px; }
.elite-request-layout p { color:#53666b; line-height:2; }
.elite-request-intro { margin-top:24px; }
.elite-coverage { border-top:1px solid #cddbd5; padding-top:26px; margin-top:32px; }
.elite-coverage h3 { font-size:1rem; }
.elite-coverage p { font-size:.9rem; margin:12px 0 0; }
.elite-request-card { background:#fff; padding:36px; border:1px solid #dfe7e5; border-radius:16px; box-shadow:0 18px 45px #102c3509; }
.elite-request-card .valuation-form-card { margin:0; padding:0; background:transparent; border:0; box-shadow:none; color:#102c35; }
.elite-request-card .valuation-form-card h3 { color:#102c35; font-size:1.5rem; }
.elite-request-card .form-sub { color:#53666b; margin:12px 0 24px; }
.elite-request-card label { color:#263e43; }
.elite-request-card select { background:#fff; color:#263e43; border:1px solid #b9c9c4; border-radius:7px; min-height:50px; }
.elite-request-card .btn-gold { background:#163e45; color:#fff; border-radius:7px; box-shadow:none; margin-top:8px; }
.elite-faq-layout { display:grid; grid-template-columns:1fr 1.6fr; gap:80px; }
.elite-faq-layout > div > p { color:#53666b; line-height:2; }
.elite-faq-list details { border-bottom:1px solid #dfe7e5; padding:22px 0; }
.elite-faq-list details:first-child { padding-top:0; }
.elite-faq-list summary { cursor:pointer; color:#102c35; font-weight:800; line-height:1.8; }
.elite-faq-list details p { color:#53666b; margin:18px 0 0; line-height:1.95; }
.elite-article { max-width:850px; padding-top:60px; padding-bottom:60px; }
.elite-article header { margin-bottom:36px; }
.elite-article-content { line-height:2; overflow-wrap:anywhere; }
.elite-article-content h2,.elite-article-content h3 { margin:2rem 0 1rem; }
.elite-article-content ul,.elite-article-content ol { padding-inline-start:1.5rem; }
.elite-article-content table { display:block; overflow-x:auto; }
.elite-skip-link { position:fixed; top:-100px; right:20px; z-index:9999; background:#fff; color:#102c35; padding:12px 20px; }
.elite-skip-link:focus { top:12px; }
:focus-visible { outline:3px solid #c78a2c; outline-offset:4px; }
#request-valuation,#main-content { scroll-margin-top:120px; }
.home footer { margin-top:0 !important; }
@media(max-width:991px) {
 .elite-hero-layout { gap:30px; }
 .elite-request-layout { gap:36px; }
 .elite-services-grid { gap:14px; }
 .elite-service { padding:24px; }
 .elite-faq-layout { gap:36px; }
}
@media(max-width:767px) {
 body { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
 .floating-mobile-bar { padding-bottom:calc(10px + env(safe-area-inset-bottom)); }
 .elite-home-hero { padding:42px 0; }
 .elite-hero-layout,.elite-request-layout,.elite-faq-layout,.elite-services-grid { grid-template-columns:1fr; }
 .elite-hero-photo img { max-height:400px; aspect-ratio:5/4; border-radius:70px 10px 10px 10px; }
 .elite-home-section { padding:54px 0; }
 .elite-section-heading { display:block; margin-bottom:28px; }
 .elite-section-heading > p { margin-top:20px; }
 .elite-request-card { padding:24px; }
 .elite-actions { flex-direction:column; }
 .elite-button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*::before,*::after { animation:none !important; transition:none !important; }
}
.elite-topbar { background:#102c35; color:#e4ece9; font-size:.75rem; padding:10px 0; }
.elite-topbar .container { display:flex; justify-content:space-between; gap:12px; }
.elite-header { border-bottom:1px solid #e3e9e6; padding:18px 0; }
.elite-brand { display:flex; gap:12px; align-items:center; margin:0; }
.elite-brand-mark { display:grid; place-items:center; background:#173f46; color:#efd09a; width:46px; height:46px; border-radius:10px; font-weight:900; font-size:1.8rem; }
.elite-brand strong { color:#173f46; font-size:1.1rem; display:block; }
.elite-brand small { color:#62746e; font-size:.67rem; display:block; margin-top:5px; }
.elite-header .navbar-nav { gap:24px; margin-inline:auto; }
.elite-header .navbar-nav a { color:#355057; font-size:.86rem; font-weight:700; padding:10px 0; display:block; }
.elite-header .navbar-nav a:hover { color:#986713; }
.elite-header-call { display:inline-flex; flex-wrap:wrap; gap:10px; padding:10px 16px; border:1px solid #d3ded7; border-radius:7px; color:#173f46; font-weight:700; font-size:.85rem; }
.elite-footer { background:#102c35; color:#c7d6d4; padding-top:54px; }
.elite-footer-layout { display:grid; grid-template-columns:2fr 1fr 1fr; gap:64px; padding-bottom:42px; }
.elite-footer h2 { color:#fff; font-size:1.4rem; margin-bottom:18px; }
.elite-footer h3 { color:#fff; font-size:1rem; margin-bottom:18px; }
.elite-footer p { max-width:370px; font-size:.9rem; }
.elite-footer a { color:#c7d6d4; display:block; margin-bottom:12px; font-size:.87rem; }
.elite-footer a:hover { color:#efd09a; }
.elite-footer-bottom { border-top:1px solid #355158; padding-top:20px; padding-bottom:20px; font-size:.75rem; }
.floating-mobile-bar { position:fixed; bottom:0; left:0; right:0; z-index:1030; display:flex; gap:10px; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid #d3ded7; }
.floating-mobile-bar a { flex:1; text-align:center; padding:12px; border-radius:7px; background:#173f46; color:#fff; font-weight:700; }
.floating-mobile-bar a:first-child { background:#efd09a; color:#102c35; }
@media(max-width:991px) { .elite-header .navbar-nav { gap:4px; margin-top:18px; } .elite-header-call { margin:14px 0; } }
@media(max-width:767px) { .elite-topbar .container { justify-content:center; } .elite-topbar span { display:none; } .elite-footer-layout { grid-template-columns:1fr 1fr; gap:28px; } .elite-footer-layout > div:first-child { grid-column:1/-1; } }

/* Expanded home: warm neutrals, deep teal, and photographic service sections. */
.elite-home-hero { background:linear-gradient(120deg,#102c35,#174951); }
.elite-hero-photo img { border:6px solid #ffffff14; border-radius:100px 16px 16px 16px; }
.elite-section-nav { background:#fff9ec; border-bottom:1px solid #e9dfcc; }
.elite-section-nav .container { display:flex; align-items:center; flex-wrap:wrap; gap:14px 30px; padding-top:20px; padding-bottom:20px; }
.elite-section-nav span { font-weight:800; color:#173f46; margin-inline-end:auto; }
.elite-section-nav a { color:#53605a; font-size:.85rem; font-weight:700; }
.elite-section-nav a:hover { color:#946022; }
.elite-service { border-top:3px solid #b3d2c7; background:#f4f8f6; }
.elite-service:nth-child(2) { border-top-color:#d9b56c; background:#fdf8ed; }
.elite-service:nth-child(3) { border-top-color:#9dbbcf; background:#f1f6fa; }
.elite-types-section { background:#f5f3ed; }
.elite-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.elite-product-card { background:#fff; border-radius:16px; overflow:hidden; border:1px solid #e3e4dc; display:flex; flex-direction:column; }
.elite-product-image { overflow:hidden; }
.elite-product-image img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; transition:transform .35s ease; }
.elite-product-card:hover img { transform:scale(1.025); }
.elite-product-copy { padding:28px; display:flex; flex-direction:column; flex:1; }
.elite-product-copy h3 { color:#153c43; margin-bottom:16px; }
.elite-product-copy p { color:#53666b; font-size:.94rem; line-height:1.9; }
.elite-product-copy .elite-product-note { font-size:.8rem; padding:12px 0; color:#687765; border-top:1px solid #e9ece4; margin-top:auto; }
.elite-product-copy a { color:#205e60; font-weight:800; font-size:.9rem; }
.elite-scrap-note { margin-top:28px; display:flex; align-items:center; gap:24px; background:#e7ece2; padding:24px 28px; border-radius:12px; }
.elite-scrap-note strong { color:#25483b; flex-shrink:0; }
.elite-scrap-note p { margin:0; color:#4c6257; font-size:.88rem; }
.elite-scrap-note a { color:#25483b; font-size:.85rem; font-weight:800; flex-shrink:0; }
.elite-editorial-layout { display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:70px; }
.elite-editorial-photo { margin:0; }
.elite-editorial-photo img { width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border-radius:16px 16px 90px 16px; }
.elite-editorial-photo figcaption { color:#63736c; font-size:.72rem; margin-top:12px; }
.elite-editorial-layout h2,.elite-bulk-layout h2,.elite-areas-layout h2,.elite-closing-section h2 { font-size:clamp(1.8rem,3.2vw,2.6rem); color:#153c43; line-height:1.6; margin-bottom:22px; }
.elite-editorial-intro { color:#53666b; line-height:2; }
.elite-service-list { list-style:none; padding:0; margin:24px 0 30px; }
.elite-service-list li { padding:18px 0; border-bottom:1px solid #dfe7e5; }
.elite-service-list strong { display:block; color:#205e60; margin-bottom:7px; }
.elite-service-list span { display:block; color:#53666b; font-size:.9rem; line-height:1.9; }
.elite-button-dark { background:#173f46; color:#fff; }
.elite-button-dark:hover { background:#28616b; color:#fff; }
.elite-bulk-section { background:#153d43; padding:70px 0; color:#d0dfd8; }
.elite-bulk-layout { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:70px; }
.elite-bulk-layout h2 { color:#fff; }
.elite-bulk-layout .elite-eyebrow { color:#efd09a; }
.elite-bulk-layout p { line-height:2; }
.elite-bulk-layout ul { padding-inline-start:20px; margin:20px 0 28px; line-height:2.2; font-size:.92rem; }
.elite-bulk-layout figure { margin:0; }
.elite-bulk-layout img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:16px; }
.elite-bulk-layout figcaption { color:#b7cbc3; font-size:.72rem; margin-top:12px; }
.elite-request-section { background:#eef5f1; }
.elite-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.elite-guide-grid article { border-top:1px solid #c6d9cc; padding-top:24px; }
.elite-guide-tag { display:inline-block; font-size:.78rem; padding:5px 12px; border-radius:5px; color:#4c694d; background:#edf3e9; margin-bottom:20px; }
.elite-guide-grid h3 { margin-bottom:18px; font-size:1.25rem; }
.elite-guide-grid p { color:#53666b; font-size:.93rem; line-height:2; }
.elite-areas-section { background:#f5f3ed; }
.elite-areas-layout { display:grid; grid-template-columns:1fr 1.5fr; gap:70px; align-items:center; }
.elite-areas-layout > div > p { color:#53666b; line-height:2; }
.elite-areas-layout a { color:#205e60; font-weight:800; font-size:.9rem; }
.elite-area-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.elite-area-item { padding:24px; border:1px solid #e1e5da; background:#ffffffb3; border-radius:10px; }
.elite-area-item h3 { color:#204b46; font-size:1.1rem; margin-bottom:12px; }
.elite-area-item p { color:#617268; font-size:.82rem; line-height:1.9; margin:0; }
.elite-closing-section { background:#eed5a4; padding:52px 0; }
.elite-closing-section .container { display:flex; align-items:center; justify-content:space-between; gap:36px; }
.elite-closing-section .elite-eyebrow { color:#6a512d; margin-bottom:12px; }
.elite-closing-section h2 { font-size:clamp(1.6rem,3vw,2.2rem); margin:0; }
.home main section[id] { scroll-margin-top:120px; }
@media(max-width:991px) {
 .elite-editorial-layout,.elite-bulk-layout,.elite-areas-layout { gap:32px; }
 .elite-product-grid { gap:16px; }
 .elite-product-copy { padding:20px; }
 .elite-scrap-note { flex-wrap:wrap; }
 .elite-scrap-note p { flex-basis:100%; order:2; }
 .elite-scrap-note a { margin-inline-start:auto; }
}
@media(max-width:767px) {
 .elite-product-grid,.elite-editorial-layout,.elite-bulk-layout,.elite-areas-layout,.elite-guide-grid { grid-template-columns:1fr; }
 .elite-section-nav .container { gap:14px 20px; }
 .elite-section-nav span { width:100%; }
 .elite-product-image img { aspect-ratio:16/10; }
 .elite-editorial-photo img { aspect-ratio:1; max-height:450px; }
 .elite-bulk-section { padding:48px 0; }
 .elite-bulk-layout img { aspect-ratio:4/3; }
 .elite-area-item { padding:18px; }
 .elite-closing-section .container { flex-direction:column; align-items:stretch; }
 .elite-scrap-note { padding:22px; gap:12px; }
 .elite-scrap-note a { margin:0; }
 .elite-scrap-note p { order:0; }
 .elite-request-card .valuation-form-card { padding:0 !important; }
 .floating-mobile-bar { display:flex !important; }
 body { padding-bottom:calc(88px + env(safe-area-inset-bottom)) !important; }
}
@media(max-width:359px) { .elite-area-grid { grid-template-columns:1fr; } }

/* Version 3.2: buying guidance, valuation details and service preparation. */
.elite-value-section { background:#fff; }
.elite-value-layout { display:grid; grid-template-columns:1fr 1.3fr; gap:80px; align-items:start; }
.elite-value-layout h2,.elite-maintenance-layout h2 { font-size:clamp(1.8rem,3.2vw,2.6rem); line-height:1.6; color:#153c43; margin-bottom:22px; }
.elite-value-layout p,.elite-maintenance-layout > div > p { color:#53666b; line-height:2; }
.elite-text-link { display:inline-block; margin-top:18px; color:#205e60; font-weight:800; }
.elite-value-list { margin:0; }
.elite-value-list > div { display:grid; grid-template-columns:150px 1fr; gap:24px; padding:24px 0; border-bottom:1px solid #dde7e0; }
.elite-value-list > div:first-child { padding-top:0; }
.elite-value-list dt { color:#205e60; font-size:1rem; }
.elite-value-list dd { margin:0; color:#53666b; line-height:1.9; font-size:.94rem; }
.elite-buying-section { background:#f4f0e7; }
.elite-buying-layout { display:grid; grid-template-columns:1fr 1.15fr; gap:64px; align-items:start; }
.elite-buying-layout figure { margin:0; }
.elite-buying-layout img { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:90px 14px 14px 14px; }
.elite-buying-layout figcaption { color:#687365; font-size:.76rem; margin-top:14px; }
.elite-buying-options article { padding:0 0 24px; margin-bottom:24px; border-bottom:1px solid #d8d9cc; }
.elite-buying-options article:last-of-type { margin-bottom:20px; }
.elite-buying-options .elite-guide-tag { background:#e7e5d5; color:#566238; margin-bottom:12px; }
.elite-buying-options h3 { margin-bottom:14px; color:#173f46; }
.elite-buying-options p { color:#53666b; line-height:1.9; }
.elite-buying-options ul { padding-inline-start:20px; color:#435d53; font-size:.88rem; line-height:2; margin:12px 0 0; }
.elite-buying-options .elite-availability-note { margin:14px 0 0; font-size:.78rem; }
.elite-space-section { background:#fff; }
.elite-space-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.elite-space-grid article { border-inline-start:3px solid #a4c7b4; padding:14px 24px; background:linear-gradient(90deg,#fff,#f1f7f3); }
.elite-space-grid article:nth-child(2) { border-color:#d8b76e; background:linear-gradient(90deg,#fff,#fbf6e9); }
.elite-space-grid article:nth-child(3) { border-color:#91b4c7; background:linear-gradient(90deg,#fff,#eef5f8); }
.elite-space-grid h3 { color:#173f46; font-size:1.25rem; margin-bottom:16px; }
.elite-space-grid p { color:#53666b; line-height:1.95; font-size:.92rem; }
.elite-space-grid span { display:block; color:#627369; font-size:.76rem; margin-top:20px; }
.elite-space-footnote { margin:30px 0 0; padding-top:20px; border-top:1px solid #e1e8e2; color:#627369; font-size:.83rem; }
.elite-service-request { background:#eaf2ef; }
.elite-maintenance-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.elite-maintenance-layout .elite-button { margin-top:16px; }
.elite-maintenance-panel { background:#fff; padding:36px; border:1px solid #d6e3db; border-radius:16px; }
.elite-maintenance-panel h3 { color:#173f46; font-size:1.3rem; margin-bottom:22px; }
.elite-maintenance-panel ul { margin:0; padding-inline-start:20px; color:#53666b; line-height:2; }
.elite-maintenance-panel li { margin-bottom:14px; }
.elite-maintenance-panel strong { color:#205e60; }
.elite-maintenance-panel p { border-top:1px solid #e1e8e2; padding-top:20px; margin:22px 0 0; font-size:.82rem; color:#627369; line-height:1.9; }
.elite-section-nav .container { gap:14px 24px; }
@media(max-width:991px) { .elite-value-layout,.elite-buying-layout,.elite-maintenance-layout { gap:32px; } .elite-value-list > div { grid-template-columns:1fr; gap:10px; } }
@media(max-width:767px) {
 .elite-value-layout,.elite-buying-layout,.elite-maintenance-layout,.elite-space-grid { grid-template-columns:1fr; }
 .elite-buying-layout img { aspect-ratio:4/3; max-height:420px; }
 .elite-value-list > div { grid-template-columns:110px 1fr; gap:16px; padding:20px 0; }
 .elite-maintenance-panel { padding:24px; }
 .elite-section-nav .container { gap:12px 20px; }
}
@media(max-width:359px) { .elite-value-list > div { grid-template-columns:1fr; gap:8px; } }

/* Interactive, keyboard-accessible service selection and local search. */
.elite-service-picker { background:#edf4f0; }
.elite-service-choices { border:0; padding:0; display:flex; flex-wrap:wrap; gap:12px; margin:0 0 24px; }
.elite-service-choices label { position:relative; cursor:pointer; flex:1; }
.elite-service-choices input { position:absolute; width:1px; height:1px; opacity:0; }
.elite-service-choices span { display:block; text-align:center; padding:17px 24px; border:1px solid #b9cec2; border-radius:9px; background:#fff; color:#205e60; font-weight:800; }
.elite-service-choices input:checked + span { background:#173f46; color:#fff; border-color:#173f46; }
.elite-service-choices input:focus-visible + span { outline:3px solid #bd862d; outline-offset:4px; }
.elite-choice-panel { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:32px; background:#fff; border-radius:14px; border:1px solid #d3e1d8; }
.elite-choice-panel h3 { color:#173f46; margin-bottom:12px; }
.elite-choice-panel p { color:#53666b; line-height:1.9; max-width:650px; margin:0; }
.elite-choice-panel .elite-button { flex-shrink:0; }
.elite-search-control { margin-top:28px; }
.elite-search-control label { display:block; font-size:.85rem; color:#205e60; font-weight:700; margin-bottom:10px; }
.elite-search-control input { width:100%; border:1px solid #acbfb3; border-radius:8px; padding:13px 16px; font:inherit; background:#fff; color:#173f46; }
.elite-search-control p { font-size:.82rem; margin:12px 0 0; color:#53666b; min-height:1.5em; }
.elite-back-top { position:fixed; bottom:28px; inset-inline-start:24px; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#173f46; color:#fff; border:2px solid #d8c29b; box-shadow:0 4px 15px #102c3522; z-index:1020; font-size:1.4rem; }
.elite-back-top:hover { color:#efd09a; background:#285e65; }
.elite-service-choices[hidden],.elite-choice-panel[hidden],.elite-search-control[hidden],.elite-area-item[hidden],.elite-faq-list details[hidden],.elite-back-top[hidden] { display:none !important; }
@media(max-width:767px) {
 .elite-service-choices { gap:8px; }
 .elite-service-choices span { padding:14px 8px; font-size:.83rem; }
 .elite-choice-panel { flex-direction:column; align-items:stretch; gap:24px; padding:24px; }
 .elite-back-top { bottom:calc(90px + env(safe-area-inset-bottom)); inset-inline-start:16px; }
}
