.section-faq {
  background:
    radial-gradient(circle at 10% 10%, rgba(188, 161, 102, .12), transparent 32%),
    linear-gradient(180deg, #f8f5ed 0%, #f1ede3 100%);
}
.faq-list { max-width: 980px; margin: 2rem auto 0; display: grid; gap: .85rem; }
.faq-item { border: 1px solid rgba(155,126,70,.28); border-radius: 18px; background: rgba(255,255,255,.86); box-shadow: 0 12px 30px rgba(28,55,44,.07); overflow: hidden; }
.faq-item summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 48px 1fr 30px; align-items: center; gap: .8rem; padding: 1rem 1.15rem; color: #24342d; font-family: "Montserrat", Arial, sans-serif; font-weight: 600; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-number { width: 40px; height: 40px; display:grid; place-items:center; border-radius:50%; color:#f7e8be; background:linear-gradient(145deg,#315b49,#173d31); border:1px solid rgba(202,164,91,.7); font-size:.78rem; }
.faq-question { line-height:1.35; }
.faq-item summary i { color:#a77731; transition: transform .25s ease; }
.faq-item[open] summary i { transform: rotate(45deg); }
.faq-answer { padding: 0 1.25rem 1.2rem 4.95rem; color:#536259; line-height:1.75; }
.faq-answer p { margin:0; }
.privacy-check a { color:#285743; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.legal-page { background:linear-gradient(180deg,#f8f5ed,#eee8da); min-height:100vh; }
.legal-hero { padding: 8.5rem 1.25rem 3.2rem; text-align:center; color:#f8efda; background:linear-gradient(135deg,#173d31,#315b49); position:relative; overflow:hidden; }
.legal-hero::after { content:""; position:absolute; inset:auto -10% -90px; height:170px; background:#f8f5ed; border-radius:50% 50% 0 0; }
.legal-hero .eyebrow { position:relative; z-index:1; }
.legal-hero h1 { position:relative; z-index:1; margin:.8rem auto .6rem; max-width:900px; font-family:"Cormorant Garamond",serif; font-size:clamp(2.5rem,6vw,4.6rem); line-height:1; }
.legal-hero p { position:relative; z-index:1; max-width:760px; margin:0 auto; color:#e8dfcd; }
.legal-wrap { width:min(100% - 2rem, 980px); margin:0 auto; padding:3rem 0 5rem; }
.legal-card { background:#fffdf8; border:1px solid rgba(155,126,70,.28); border-radius:24px; padding:clamp(1.2rem,4vw,3rem); box-shadow:0 20px 55px rgba(24,54,42,.11); }
.legal-card h2 { color:#244c3c; font-family:"Cormorant Garamond",serif; font-size:2rem; margin:2rem 0 .7rem; }
.legal-card h2:first-child { margin-top:0; }
.legal-card h3 { color:#315b49; margin:1.4rem 0 .5rem; }
.legal-card p,.legal-card li { color:#4f5f56; line-height:1.75; }
.legal-card ul { padding-left:1.25rem; }
.legal-note { padding:1rem 1.1rem; border-left:4px solid #b98a43; background:#f7f0df; border-radius:0 12px 12px 0; }
.legal-meta { display:flex; flex-wrap:wrap; gap:.7rem; margin-bottom:1.4rem; }
.legal-meta span { padding:.45rem .75rem; border-radius:999px; background:#edf3ef; color:#315b49; font-size:.88rem; font-weight:600; }
.legal-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.legal-page .site-header .brand { text-decoration:none; }

@media(max-width:760px){
  .faq-item summary { grid-template-columns:40px 1fr 24px; padding:.9rem; }
  .faq-number{width:34px;height:34px}.faq-answer{padding:0 .95rem 1rem .95rem}
  .legal-hero{padding-top:7rem}.legal-wrap{width:min(100% - 1rem,980px)}
}
#faq .faq-list .faq-item,
#faq .faq-list .faq-item summary,
#faq .faq-list .faq-number,
#faq .faq-list .faq-item summary i,
#faq .faq-list .faq-question {
  transition:
    transform .24s ease,
    color .24s ease,
    background-color .28s ease,
    border-color .24s ease,
    box-shadow .28s ease;
}

#faq .faq-list .faq-item summary {
  position: relative;
  overflow: hidden;
  color: #24342d !important;
  background: rgba(255, 255, 255, .92) !important;
  text-shadow: none !important;
}
#faq .faq-list .faq-question,
#faq .faq-list .faq-item:hover .faq-question,
#faq .faq-list .faq-item[open] .faq-question,
#faq .faq-list .faq-item[open]:hover .faq-question,
#faq .faq-list .faq-item summary:hover .faq-question,
#faq .faq-list .faq-item summary:focus-visible .faq-question {
  color: #24342d !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
  filter: none !important;
}
#faq .faq-list .faq-item summary::before,
#faq .faq-list .faq-item summary::after,
#faq .faq-list .faq-item summary > .metallic-sheen {
  content: none !important;
  display: none !important;
  animation: none !important;
}

#faq .faq-list .faq-item summary:focus-visible {
  outline: 3px solid rgba(60, 93, 77, .28);
  outline-offset: -3px;
}

@media (hover: hover) and (pointer: fine) {
  #faq .faq-list .faq-item:hover {
    transform: translateY(-2px);
    border-color: rgba(60, 93, 77, .32);
    box-shadow: 0 16px 34px rgba(28, 55, 44, .11);
  }
  #faq .faq-list .faq-item:hover summary,
  #faq .faq-list .faq-item summary:hover,
  #faq .faq-list .faq-item[open]:hover summary {
    color: #24342d !important;
    background: #e6eee7 !important;
  }

  #faq .faq-list .faq-item:hover .faq-number {
    color: #f7e8be;
    background: linear-gradient(145deg, #3c5d4d, #294438);
    border-color: rgba(167, 119, 49, .62);
    box-shadow: 0 5px 12px rgba(28, 55, 44, .15);
  }

  #faq .faq-list .faq-item:hover summary i {
    color: #9a6a35;
    transform: scale(1.08);
    filter: none;
  }

  #faq .faq-list .faq-item[open]:hover summary i {
    transform: rotate(45deg) scale(1.08);
  }
}

#faq .faq-list .faq-item[open] {
  border-color: rgba(60, 93, 77, .28);
  box-shadow: 0 15px 32px rgba(28, 55, 44, .10);
}

#faq .faq-list .faq-item[open] summary {
  color: #24342d !important;
  background: #edf3ee !important;
}

#faq .faq-list .faq-item[open] .faq-answer {
  background: rgba(255, 255, 255, .92);
}

@media (prefers-reduced-motion: reduce) {
  #faq .faq-list .faq-item,
  #faq .faq-list .faq-item summary,
  #faq .faq-list .faq-number,
  #faq .faq-list .faq-item summary i,
  #faq .faq-list .faq-question {
    transition: none !important;
  }

  #faq .faq-list .faq-item:hover {
    transform: none;
  }
}
