/* Layout Internal Styles */
:root {
      /* Dynamic layout properties mapping from react code to CSS variables */
      --hero-pad: 64px 0 0;
      --hero-dir: row;
      --hero-gap: 56px;
      --hero-title-size: 58px;
      --trust-panel-pos: absolute;
      --trust-panel-left: 5%;
      --trust-panel-right: 5%;
      --trust-panel-bottom: -36px;
      --trust-panel-margin-top: 0;
      --trust-stat-min-width: 110px;
      --trust-stat-pad: 22px 16px;
      --section-pad: 120px 0 48px;
      --section-pad-bottom: 96px;
      --h2-size: 38px;
      --card-grid-cols: repeat(4, 1fr);
      --band-pad: 80px 0;
      --band-dir: row;
      --band-title-size: 32px;
      --legacy-grid-cols: 0.9fr 1.1fr 0.9fr;
      --why-grid-cols: repeat(3, 1fr);
      --testimonial-grid-cols: repeat(3, 1fr);
      --resource-grid-cols: repeat(4, 1fr);
      --cta-pad: 64px 0;
      --cta-dir: row;
      --cta-title-size: 28px;
      --cta-btn-align: right;

      /* Inner Pages */
      --inner-hero-pad: 72px 0 72px;
      --inner-hero-title-size: 50px;
      --team-grid-cols: repeat(3, 1fr);
      --faq-grid-cols: 0.8fr 1.2fr;
      --contact-grid-cols: 1fr 1fr;
      --quote-grid-cols: 1fr 1fr;
      --calculator-grid-cols: 1fr;
      --legacy-grid-cols-2: 1.1fr 0.9fr;
    }

    @media (max-width: 1140px) {
      :root {
        --hero-pad: 56px 0 0;
        --hero-title-size: 46px;
        --inner-hero-pad: 56px 0 56px;
        --inner-hero-title-size: 42px;
        --team-grid-cols: repeat(2, 1fr);
        --faq-grid-cols: 1fr;
        --contact-grid-cols: 1fr;
        --quote-grid-cols: 1fr;
        --legacy-grid-cols-2: 1fr;
      }
    }

    @media (max-width: 860px) {
      :root {
        --hero-pad: 40px 0 0;
        --hero-dir: column;
        --hero-gap: 32px;
        --hero-title-size: 38px;
        --trust-panel-pos: static;
        --trust-panel-left: auto;
        --trust-panel-right: auto;
        --trust-panel-bottom: auto;
        --trust-panel-margin-top: -24px;
        --trust-stat-min-width: 45%;
        --trust-stat-pad: 16px 10px;
        --section-pad: 96px 0 40px;
        --section-pad-bottom: 48px;
        --h2-size: 28px;
        --card-grid-cols: 1fr;
        --band-pad: 56px 0;
        --band-dir: column;
        --band-title-size: 26px;
        --legacy-grid-cols: 1fr;
        --why-grid-cols: 1fr;
        --testimonial-grid-cols: 1fr;
        --resource-grid-cols: 1fr;
        --cta-pad: 48px 0;
        --cta-dir: column;
        --cta-title-size: 24px;
        --cta-btn-align: left;

        --inner-hero-pad: 48px 0 48px;
        --inner-hero-title-size: 32px;
        --team-grid-cols: 1fr;
      }
    }

    body { margin:0; background:#FAF7F0; font-family:'Manrope',sans-serif; color:#102A2B; }
    * { box-sizing:border-box; }
    ::selection { background:#C59836; color:#fff; }
    a { color:#063C32; transition: color .2s ease; }
    a:hover { color:#0A4A3C; }
    input, select, textarea { font-family:'Manrope',sans-serif; }
    @media (prefers-reduced-motion: reduce) { *{ animation-duration:0.01ms !important; } }
    
    /* Animations */
    @keyframes fadeUp { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
    @keyframes goldLine { from { width:0; } to { width:56px; } }

    /* Custom classes */
    .hidden { display: none !important; }
    .nav-link {
      padding: 10px 14px;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: .04em;
      color: #063C32;
      text-decoration: none;
      border-radius: 6px;
      white-space: nowrap;
      transition: background-color 0.2s ease, color 0.2s ease;
    }
    .nav-link:hover, .nav-link.active {
      color: #8A6318;
      background: rgba(197,152,54,0.13);
    }
    .nav-item-dropdown {
      position: relative;
    }
    .dropdown-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: 50%;
      transform: translateX(-50%);
      padding-top: 14px;
      z-index: 200;
    }
    .nav-item-dropdown:hover .dropdown-menu {
      display: block;
    }
    .dropdown-menu-right {
      left: auto;
      right: 0;
      transform: none;
    }
    .dropdown-inner {
      background: #FFFFFF;
      border: 1px solid #D9D0BE;
      border-radius: 10px;
      box-shadow: 0 18px 40px rgba(6,26,22,0.16);
      padding: 14px;
      width: 250px;
      display: grid;
      grid-template-columns: 1fr;
      gap: 1px;
      animation: fadeUp .18s ease;
    }
    .dropdown-inner a {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 9px 12px;
      border-radius: 6px;
      font-size: 13.5px;
      font-weight: 600;
      color: #17624D;
      text-decoration: none;
      transition: background-color 0.2s ease;
    }
    .dropdown-inner a:hover {
      background: rgba(197,152,54,0.08);
    }

.layout-style-1 { font-family:'Manrope',sans-serif;color:#102A2B;background:#FAF7F0;min-height:100vh;overflow-x:hidden; }
/* Header Internal Styles */
#main-header {
    position: sticky;
    top: 0;
    z-index: 500;
    background: #FAF7F0;
    border-bottom: 1px solid transparent;
    transition: box-shadow .25s ease, border-color .25s ease;
  }
  #main-header.scrolled {
    border-bottom: 1px solid #D9D0BE;
    box-shadow: 0 4px 20px rgba(6,26,22,0.06);
  }
  .header-container {
    height: 92px;
  }

  @media (max-width: 860px) {
    .header-container {
      height: 68px;
    }
    .desktop-nav {
      display: none !important;
    }
    .desktop-right-cluster {
      display: none !important;
    }
    .mobile-right-cluster {
      display: flex !important;
    }
    .logo-text {
      display: none !important;
    }
  }

.header-style-1 { max-width:1360px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:'Manrope',sans-serif; }
.header-style-2 { display:flex;align-items:center;gap:12px;text-decoration:none;flex:none; }
.header-style-3 { width:56px;height:56px;border-radius:50%;background:#063C32;border:2px solid #C59836;display:flex;align-items:center;justify-content:center;flex:none; }
.header-style-4 { font-family:'Playfair Display',serif;font-weight:800;font-size:17px;color:#F8F4EA;letter-spacing:0;padding-left:2px; }
.header-style-5 { display:flex;flex-direction:column;line-height:1.15; }
.header-style-6 { font-family:'Playfair Display',serif;font-weight:700;font-size:15px;color:#063C32;letter-spacing:.02em; }
.header-style-7 { font-family:'Manrope',sans-serif;font-weight:600;font-size:9.5px;letter-spacing:.14em;color:#747B77;text-transform:uppercase; }
.header-style-8 { display:flex;align-items:center;gap:6px;flex:1;justify-content:center; }
.header-style-9 { width: 280px; }
.header-style-10 { color: #8A6318; }
.header-style-11 { width: 230px; }
.header-style-12 { display:flex;align-items:center;flex:none; }
.header-style-13 { display:flex;align-items:center;gap:22px; }
.header-style-14 { display:flex;align-items:center;gap:7px;color:#063C32;text-decoration:none;font-weight:700;font-size:14px;white-space:nowrap; }
.header-style-15 { display:flex;align-items:center;gap:6px;color:#4D5653;text-decoration:none;font-weight:600;font-size:13px;white-space:nowrap; }
.header-style-16 { background:#C59836;color:#063C32;border:none;padding:13px 24px;border-radius:6px;font-weight:700;font-size:13.5px;letter-spacing:.03em;white-space:nowrap;text-decoration:none;display:inline-block; }
.header-style-17 { display:none;align-items:center;gap:14px; }
.header-style-18 { color:#063C32;display:flex; }
.header-style-19 { background:none;border:none;padding:6px;cursor:pointer;color:#063C32;display:flex;align-items:center;justify-content:center; }
.header-style-20 { background:#FAF7F0;border-top:1px solid #D9D0BE;padding:8px 20px 20px;display:flex;flex-direction:column;font-family:'Manrope',sans-serif; }
.header-style-21 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-22 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-23 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-24 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-25 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-26 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-27 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-28 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-29 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-30 { padding:14px 4px;border-bottom:1px solid #EEE7D9;font-weight:700;font-size:14.5px;color:#063C32;text-decoration:none;letter-spacing:.02em; }
.header-style-31 { margin-top:16px;background:#C59836;color:#063C32;border:none;padding:15px;border-radius:6px;font-weight:700;font-size:14.5px;text-align:center;text-decoration:none; }
.header-style-32 { margin-top:12px;text-align:center;color:#4D5653;font-weight:600;font-size:13px;text-decoration:none; }
/* Footer Internal Styles */
.footer-grid {
    grid-template-columns: repeat(5, 1fr);
  }
  .footer-brand {
    grid-column: span 1;
  }
  .footer-bottom {
    flex-direction: row;
    align-items: center;
  }

  @media (max-width: 1140px) {
    .footer-grid {
      grid-template-columns: repeat(3, 1fr);
    }
    .footer-brand {
      grid-column: span 3;
    }
  }

  @media (max-width: 860px) {
    .footer-grid {
      grid-template-columns: 1fr;
    }
    .footer-brand {
      grid-column: span 1;
    }
    .footer-bottom {
      flex-direction: column;
      align-items: flex-start;
    }
  }

.footer-style-1 { background:#061F34;color:#F8F4EA;font-family:'Manrope',sans-serif; }
.footer-style-2 { max-width:1360px;margin:0 auto;padding:64px 32px 32px;display:grid;gap:40px; }
.footer-style-3 { display:flex;align-items:center;gap:12px;margin-bottom:18px;text-decoration:none; }
.footer-style-4 { width:52px;height:52px;border-radius:50%;background:#063C32;border:2px solid #C59836;display:flex;align-items:center;justify-content:center;flex:none; }
.footer-style-5 { font-family:'Playfair Display',serif;font-weight:800;font-size:16px;color:#F8F4EA;padding-left:2px; }
.footer-style-6 { display:flex;flex-direction:column;line-height:1.15; }
.footer-style-7 { font-family:'Playfair Display',serif;font-weight:700;font-size:14px;color:#F8F4EA; }
.footer-style-8 { font-weight:600;font-size:9px;letter-spacing:.14em;color:#8FA3AE;text-transform:uppercase; }
.footer-style-9 { font-size:14px;line-height:1.7;color:#C7D2D6;max-width:340px;margin:0 0 20px; }
.footer-style-10 { display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:#C7D2D6;margin-bottom:20px; }
.footer-style-11 { display:flex;gap:12px; }
.footer-style-12 { width:34px;height:34px;border-radius:50%;border:1px solid #23475D;display:flex;align-items:center;justify-content:center;color:#F8F4EA;text-decoration:none; }
.footer-style-13 { width:34px;height:34px;border-radius:50%;border:1px solid #23475D;display:flex;align-items:center;justify-content:center;color:#F8F4EA;text-decoration:none; }
.footer-style-14 { width:34px;height:34px;border-radius:50%;border:1px solid #23475D;display:flex;align-items:center;justify-content:center;color:#F8F4EA;text-decoration:none; }
.footer-style-15 { width:34px;height:34px;border-radius:50%;border:1px solid #23475D;display:flex;align-items:center;justify-content:center;color:#F8F4EA;text-decoration:none; }
.footer-style-16 { font-weight:700;font-size:12.5px;letter-spacing:.1em;color:#D0A542;text-transform:uppercase;margin-bottom:16px; }
.footer-style-17 { display:flex;flex-direction:column;gap:11px; }
.footer-style-18 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-19 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-20 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-21 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-22 { font-weight:700;font-size:12.5px;letter-spacing:.1em;color:#D0A542;text-transform:uppercase;margin-bottom:16px; }
.footer-style-23 { display:flex;flex-direction:column;gap:11px; }
.footer-style-24 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-25 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-26 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-27 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-28 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-29 { font-weight:700;font-size:12.5px;letter-spacing:.1em;color:#D0A542;text-transform:uppercase;margin-bottom:16px; }
.footer-style-30 { display:flex;flex-direction:column;gap:11px; }
.footer-style-31 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-32 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-33 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-34 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-35 { font-weight:700;font-size:12.5px;letter-spacing:.1em;color:#D0A542;text-transform:uppercase;margin-bottom:16px; }
.footer-style-36 { display:flex;flex-direction:column;gap:11px; }
.footer-style-37 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-38 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-39 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-40 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-41 { color:#C7D2D6;text-decoration:none;font-size:13.5px; }
.footer-style-42 { border-top:1px solid #23475D; }
.footer-style-43 { max-width:1360px;margin:0 auto;padding:20px 32px;display:flex;gap:14px;justify-content:space-between; }
.footer-style-44 { font-size:11.5px;color:#8FA3AE;line-height:1.6;margin:0;max-width:640px; }
.footer-style-45 { display:flex;gap:20px;flex:none;flex-wrap:wrap; }
.footer-style-46 { color:#8FA3AE;font-size:11.5px;text-decoration:underline; }
.footer-style-47 { color:#8FA3AE;font-size:11.5px;text-decoration:underline; }
.footer-style-48 { color:#8FA3AE;font-size:11.5px;text-decoration:underline; }
.footer-style-49 { color:#8FA3AE;font-size:11.5px;text-decoration:underline; }