@charset "UTF-8";
/* CSS Document */
:root {
  --oat: #F5F1EA;
  --oat-deep: #EAE0D0;
  --green: #4A5740;
  --green-mid: #5C6B50;
  --green-light: #8A9A7E;
  --charcoal: #2E2B26;
  --stone: #8A8278;
  --warm-white: #FAF8F3;
}

body {
  font-family: 'Outfit', sans-serif;
  background-color: var(--warm-white) !important;
  color: var(--charcoal);
  font-weight: 300;
  margin: 0;
  padding: 0;
}

    /* ── NAV & DROPDOWN UNIFICATION ── */
    .navbar { background: rgba(250,248,243,0.97) !important; backdrop-filter: blur(10px); }
    
    /* Global Nav Link Style */
    .nav-link, .dropdown-item { 
      font-size: 0.73rem !important; 
      letter-spacing: 0.14em !important; 
      text-transform: uppercase !important;
      color: var(--stone) !important; 
      transition: all 0.25s ease;
    }

    .nav-link:hover, .nav-link.active, .dropdown-item:hover { 
      color: var(--green) !important; 
    }

    /* Dropdown Specific Box Styling */
    .dropdown-menu {
      background-color: var(--warm-white);
      border: 1px solid rgba(74,87,64,0.1);
      border-radius: 0; 
      padding: 1rem 0;
      min-width: 200px;
    }

    .nav-item {
      padding: 0.7rem 1rem;
      background: transparent;
    }
	   .dropdown-item {
      padding: 0.7rem 1.5rem;
      background: transparent;
    }

    .dropdown-item:hover {
      background-color: #f1f3ef !important;
      padding-left: 1.8rem;
    }

    .dropdown-divider { border-top: 1px solid rgba(74,87,64,0.1); }

    /* Desktop Hover Logic */
    @media (min-width: 992px) {
      .nav-item.dropdown:hover .dropdown-menu { display: block; margin-top: 0; }
      .nav-item.dropdown:hover .dropdown-toggle::after { transform: rotate(180deg); }
      .dropdown-toggle::after { transition: transform 0.2s; }
    }

    /* ── FOOTER STYLING ── */
    .footer-custom { background-color: var(--oat) !important; } 
    .footer-link { color: var(--stone); text-decoration: none; transition: color 0.2s; }
    .footer-link:hover { color: var(--green); text-decoration: underline; }

    /* .hero { min-height: 70vh; display: flex; align-items: center; justify-content: center; background: var(--oat-deep); }*/
	   /* ── HERO (home) ── */
    .hero { position: relative; min-height: 80vh; display: flex; align-items: center; justify-content: center; padding-top: 72px; background: var(--oat-deep); }
    .hero-bg { position: absolute; inset: 0; background: linear-gradient(145deg, #C8C0AE 0%, #A89878 60%, #8A7A62 100%); display: flex; align-items: center; justify-content: center; }
    .hero-bg-label { font-size: 0.65rem; letter-spacing: 0.22em; text-transform: uppercase; color: rgba(255,255,255,0.35); }
    .hero-card { position: relative; z-index: 2; background: rgba(250,248,243,0.95); padding: 4rem 5rem; text-align: center; max-width: 620px; width: 90%; }
    .hero-eyebrow { font-size: 0.65rem; letter-spacing: 0.25em; text-transform: uppercase; color: var(--green-light); margin-bottom: 1.5rem; }
    .hero-heading { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.8rem, 5vw, 4.2rem); font-weight: 300; line-height: 1.1; color: var(--charcoal); margin-bottom: 1rem; }
    .hero-heading em { font-style: italic; color: var(--green); }
    .hero-tagline { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; font-style: italic; font-weight: 300; color: var(--stone); margin-bottom: 2.5rem;}
    .btn { display: inline-block; background: var(--green); color: var(--warm-white); padding: 0.85rem 2.2rem; font-size: 0.73rem; letter-spacing: 0.13em; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: background 0.25s; border: none; font-family: 'Outfit', sans-serif; font-weight: 300; }
    .btn:hover { background: var(--charcoal); }
	   /* ── INTRO ──*/
    .intro { padding: 6rem 4rem; background: var(--warm-white); text-align: center; }
    .intro-eyebrow { font-size: 0.65rem; letter-spacing: 0.25em; text-transform: uppercase; color: var(--green-light); margin-bottom: 1.5rem; display: block; }
    .intro p { font-family: 'Cormorant Garamond', serif; font-size: 1.4rem; font-weight: 300; line-height: 1.75; color: var(--charcoal); max-width: 680px; margin: 0 auto; }
 .page-hero { padding: 2rem 4rem 1rem; background: var(--oat-deep); position: relative; overflow: hidden; }
    /*.page-hero::before { content: ''; position: absolute; right: -80px; top: -80px; width: 500px; height: 500px; border-radius: 50%; border: 1px solid rgba(74,87,64,0.12); }
    .page-hero::after { content: ''; position: absolute; right: -20px; top: -20px; width: 360px; height: 360px; border-radius: 50%; border: 1px solid rgba(74,87,64,0.08); }*/
	 .breadcrumb { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 2rem; }
    .breadcrumb a { font-size: 0.65rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--stone); text-decoration: none; cursor: pointer; transition: color 0.2s; }
    .breadcrumb a:hover { color: var(--green); }
    .breadcrumb-sep { font-size: 0.65rem; color: rgba(138,130,120,0.4); }
    .breadcrumb-current { font-size: 0.65rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--green); }
	   .page-eyebrow { font-size: 0.65rem; letter-spacing: 0.25em; text-transform: uppercase; color: var(--green-light); margin-bottom: 1rem; display: block; }
    .page-heading { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.4rem, 4.5vw, 3.8rem); font-weight: 300; line-height: 1.1; color: var(--charcoal); margin-bottom: 1.2rem; }
    .page-heading em { font-style: italic; color: var(--green); }
    .page-sub { font-family: 'Cormorant Garamond', serif; font-size: 1.15rem; font-weight: 300; line-height: 1.75; color: var(--stone); max-width: 560px; }
	   .getting-started { padding: 5rem 4rem 8rem; max-width: 860px; margin: 0 auto; }
    .faq-list { margin-top: 3rem; display: flex; flex-direction: column; gap: 2px; }
    .faq-item { background: var(--oat); padding: 2rem 2.5rem; cursor: pointer; }
    .faq-header { display: flex; justify-content: space-between; align-items: center; gap: 2rem; }
    .faq-q { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; font-weight: 400; color: var(--charcoal); }
    .faq-toggle { width: 24px; height: 24px; flex-shrink: 0; border: 1px solid rgba(74,87,64,0.25); border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: background 0.25s, border-color 0.25s; }
    .faq-item.open .faq-toggle { background: var(--green); border-color: var(--green); }
    .faq-toggle svg { width: 8px; height: 8px; }
    .faq-item.open .faq-toggle svg { stroke: white; transform: rotate(45deg); }
    .faq-body { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding-top 0.3s; }
    .faq-item.open .faq-body { max-height: 300px; padding-top: 1.2rem; }
    .faq-a { font-size: 0.88rem; line-height: 1.9; color: var(--stone); }
	 .block-label { font-size: 0.62rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--green-light); margin-bottom: 0.8rem; display: block; }
    .block-title { font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; font-weight: 400; color: var(--charcoal); margin-bottom: 1rem; line-height: 1.2; }
    .block-body { font-size: 0.9rem; line-height: 1.95; color: var(--stone); }
    .block-body p + p { margin-top: 1rem; }
    .block-list { list-style: none; margin-top: 1rem; display: flex; flex-direction: column; gap: 0.5rem; }
    .block-list li { font-size: 0.88rem; line-height: 1.7; color: var(--charcoal); padding-left: 1.2rem; position: relative; }
    .block-list li::before { content: '—'; position: absolute; left: 0; color: var(--green-light); font-size: 0.75rem; top: 2px; }
    .block-divider { height: 1px; background: rgba(74,87,64,0.12); }
	     /* ── SIDEBAR ── */
    .sidebar { display: flex; flex-direction: column; gap: 2rem; position: sticky; top: 110px; }
    .contact-card { background: var(--green); padding: 2.5rem; }
    .contact-card-eyebrow { font-size: 0.58rem; letter-spacing: 0.24em; text-transform: uppercase; color: rgba(245,241,234,0.6); margin-bottom: 0.8rem; display: block; }
    .contact-card-name { font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; font-weight: 300; color: var(--oat); margin-bottom: 0.4rem; }
    .contact-card-role { font-size: 0.75rem; color: rgba(245,241,234,0.65); margin-bottom: 1.8rem; line-height: 1.5; }
    .contact-card-btn { display: block; text-align: center; font-size: 0.68rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green); background: var(--oat); padding: 0.8rem 1.4rem; text-decoration: none; cursor: pointer; transition: background 0.25s; }
    .contact-card-btn:hover { background: var(--warm-white); }
    .free-note { font-size: 0.75rem; color: rgba(245,241,234,0.55); margin-top: 1rem; line-height: 1.6; text-align: center; }
    .ndis-card { background: var(--oat); padding: 1.8rem 2rem; }
    .ndis-card-label { font-size: 0.58rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--green-light); margin-bottom: 0.6rem; display: block; }
    .ndis-card p { font-size: 0.8rem; line-height: 1.75; color: var(--stone); }
    .related-card { background: var(--oat); padding: 2rem; }
    .related-title { font-size: 0.6rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--stone); margin-bottom: 1.2rem; display: block; }
    .related-list { list-style: none; }
    .related-list li { border-top: 1px solid rgba(74,87,64,0.12); }
    .related-list li:last-child { border-bottom: 1px solid rgba(74,87,64,0.12); }
    .related-list a { display: flex; justify-content: space-between; align-items: center; padding: 0.9rem 0; font-size: 0.82rem; color: var(--charcoal); text-decoration: none; cursor: pointer; transition: color 0.2s, padding-left 0.2s; }
    .related-list a:hover { color: var(--green); padding-left: 0.3rem; }
    .related-list a span { font-size: 0.75rem; color: var(--green-light); }
	  /* ── CONTACT ── */
    .contact-section { padding: 8rem 4rem; background: var(--charcoal); text-align: center; }
    .contact-heading { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.8rem,3vw,2.4rem); font-weight: 300; color: var(--oat); margin-bottom: 1rem; }
    .contact-body { font-size: 0.88rem; line-height: 1.85; color: var(--stone); max-width: 480px; margin: 0 auto 3.5rem; }
    .contact-details { display: flex; justify-content: center; gap: 5rem; flex-wrap: wrap; }
    .contact-item-label { font-size: 0.58rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--green-light); margin-bottom: 0.5rem; display: block; }
    .contact-item a { font-size: 0.88rem; color: var(--oat); text-decoration: none; transition: color 0.25s; }
    .contact-item a:hover { color: var(--green-light); }
	   .about-heritage-quote { border-left: 2px solid var(--green); padding: 1.5rem 0 1.5rem 2.5rem; }
    .about-heritage-quote p { font-family: 'Cormorant Garamond', serif; font-size: 1.4rem; font-style: italic; font-weight: 300; line-height: 1.7; color: var(--charcoal); }
    .about-heritage-quote cite { display: block; margin-top: 1rem; font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--green-light); font-style: normal; }