/* ── NAV ── */
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    /* ── HERO ── */
    .ta-page-hero {
      background: var(--navy);
      background-image: radial-gradient(ellipse at 70% 50%, var(--navy-deep) 0%, var(--navy) 60%);
      color: var(--white); padding: 72px 40px 80px;
      position: relative; overflow: hidden; text-align: center;
    }
    .ta-page-hero::before {
      content: ""; position: absolute; inset: 0;
      background-image: radial-gradient(circle at 15% 85%, rgba(201,170,102,0.12) 0%, transparent 45%), radial-gradient(circle at 85% 15%, rgba(105,153,152,0.1) 0%, transparent 40%);
      pointer-events: none;
    }
    .ta-page-hero-inner { max-width: 680px; margin: 0 auto; position: relative; }
    .ta-page-eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gold); margin-bottom: 1rem; display: block; }
    .ta-page-hero h1 { font-family: "Playfair Display", serif; font-size: clamp(28px, 4vw, 46px); font-weight: 600; line-height: 1.2; margin-bottom: 20px; color: var(--white); }
    .ta-page-hero h1 em { font-style: italic; color: var(--gold); }
    .ta-page-hero-sub { font-size: 16px; color: rgba(255,255,255,0.8); font-weight: 300; line-height: 1.75; max-width: 560px; margin: 0 auto; }

    /* ── MAIN LAYOUT ── */
    .faq-page { max-width: 860px; margin: 0 auto; padding: 64px 40px 80px; }
    .faq-intro { margin-bottom: 3rem; }
    .faq-intro p { font-size: 0.97rem; color: var(--text-muted); line-height: 1.8; margin-bottom: 0.75rem; }
    .faq-intro p:last-child { margin-bottom: 0; }
    .faq-intro a { color: var(--teal); text-decoration: none; font-weight: 500; }
    .faq-intro a:hover { text-decoration: underline; }

    /* ── SECTION HEADING ── */
    .faq-section-title {
      font-family: "Playfair Display", serif; font-size: 1.25rem; font-weight: 600;
      color: var(--navy); margin-bottom: 1.25rem;
      padding-bottom: 0.6rem; border-bottom: 2px solid var(--teal-pale);
      display: flex; align-items: center; gap: 0.75rem;
    }
    .faq-section-label {
      font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em;
      text-transform: uppercase; color: var(--white);
      background: var(--teal); padding: 0.2rem 0.6rem; border-radius: 20px;
    }
    .faq-section-label.google { background: var(--gold-dark); }
    .faq-group { margin-bottom: 3rem; }

    /* ── ACCORDION ── */
    .faq-item {
      border: 1px solid var(--border);
      border-radius: 8px; margin-bottom: 8px;
      overflow: hidden; transition: box-shadow 0.2s;
      background: var(--white);
    }
    .faq-item.open {
      box-shadow: 0 4px 20px rgba(11,72,103,0.09);
      border-color: var(--teal);
    }
    .faq-q {
      width: 100%; display: flex; align-items: flex-start; gap: 0.75rem;
      padding: 1.1rem 1.25rem; background: none; border: none;
      cursor: pointer; text-align: left; transition: background 0.15s;
    }
    .faq-q:hover { background: var(--off-white); }
    .faq-item.open .faq-q { background: var(--navy-pale); }
    .faq-num { font-size: 0.82rem; font-weight: 700; color: var(--teal); flex-shrink: 0; margin-top: 2px; min-width: 1.4rem; }
    .faq-q-text { font-size: 0.97rem; font-weight: 600; color: var(--navy); line-height: 1.45; flex: 1; }
    .faq-icon {
      font-size: 1.3rem; font-weight: 300; color: var(--teal);
      flex-shrink: 0; line-height: 1; margin-top: 1px;
      transition: transform 0.25s;
    }
    .faq-item.open .faq-icon { transform: rotate(45deg); }
    .faq-a {
      display: none;
      max-height: 0; overflow: hidden;
      opacity: 0;
    }
    .faq-item.open .faq-a { display: block; opacity: 1; max-height: 600px; }
    .faq-a-inner {
      padding: 0 1.25rem 1.25rem 3.1rem;
      font-size: 0.94rem; color: var(--text); line-height: 1.8;
    }
    .faq-a-inner p { margin-bottom: 0.75rem; }
    .faq-a-inner p:last-child { margin-bottom: 0; }
    .faq-a-inner ul { margin: 0.5rem 0 0.75rem 1.2rem; }
    .faq-a-inner li { margin-bottom: 0.4rem; line-height: 1.6; }
    .faq-a-inner a { color: var(--teal); text-decoration: none; font-weight: 500; }
    .faq-a-inner a:hover { text-decoration: underline; }

    /* ── CTA BAND ── */
    .faq-cta {
      background: var(--teal); padding: 56px 40px; text-align: center;
    }
    .faq-cta h2 { font-family: "Playfair Display", serif; font-size: 1.6rem; font-weight: 600; color: var(--white); margin-bottom: 0.75rem; }
    .faq-cta p { font-size: 1rem; color: rgba(255,255,255,0.88); margin-bottom: 1.75rem; line-height: 1.7; }
    .faq-cta-btns { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }
    .faq-cta-btn { display: inline-block; padding: 0.85rem 2rem; border-radius: 6px; font-weight: 600; font-size: 0.95rem; text-decoration: none; transition: all 0.15s; }
    .faq-cta-btn.primary { background: var(--white); color: var(--navy); }
    .faq-cta-btn.primary:hover { background: var(--navy-pale); }
    .faq-cta-btn.secondary { background: transparent; color: var(--white); border: 2px solid rgba(255,255,255,0.6); }
    .faq-cta-btn.secondary:hover { border-color: var(--white); background: rgba(255,255,255,0.1); }

    /* ── FOOTER ── */
    
    
    
    
    
    
    
    
    
    
    
    
    

    @media (max-width: 600px) {
      .faq-page { padding: 48px 20px 60px; }
      
      .faq-cta { padding: 48px 20px; }
    }
