/* Quiet FAQ color and photo accents; questions, answers and routes remain untouched. */
.faq-main .faq-group-heading h2,
.faq-main .faq-index h2 { color: #425b36; }
.faq-main .faq-group { border-top-color: #b9c4ae; }
.faq-main .faq-index ul,
.faq-main .faq-index li { border-color: #c2cab9; }
.faq-main .faq-index { background: #f2f4ed; padding: .9rem 1rem; }
.faq-main .faq-index a { color: #4f6048; }
.faq-main .faq-index a:hover,
.faq-main .faq-index a:focus-visible { color: #425b36; }
.faq-main .faq-item[open] summary { background: #edf1e9; border-radius: 2px; color: #425b36; padding-inline: .75rem; }
.faq-main .faq-item[open] summary::after { color: #425b36; }
.faq-main .faq-item[open] .faq-answer { background: #f5f7f2; border-left: 3px solid #c4cdbb; padding: .55rem 1rem 1.35rem; }
.faq-group-heading-children { display: grid; grid-template-columns: minmax(0, max-content) 44px minmax(5rem, 1fr); align-items: center; }
.faq-group-heading-children h2 { grid-column: 1; grid-row: 1; }
.faq-group-sun { display: block; grid-column: 2; grid-row: 1; height: 44px; margin-left: .8rem; pointer-events: none; width: 44px; }
.faq-group-sun img { display: block; height: 100%; object-fit: contain; width: 100%; }
.faq-group-heading-children > a { grid-column: 3; grid-row: 1; justify-self: end; }
.faq-group-heading.has-faq-scene { align-items: start; column-gap: 1.5rem; display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem); row-gap: .45rem; }
.faq-group-heading.has-faq-scene h2 { grid-column: 1; grid-row: 1; }
.faq-group-seedhead { display: block; grid-column: 1; grid-row: 2; height: 28px; margin-top: -.4rem; pointer-events: none; width: 112px; }
.faq-group-seedhead svg { display: block; height: 100%; width: 100%; }
.faq-scene { grid-column: 2; grid-row: 1 / span 3; margin: 0; max-width: 19rem; width: 100%; }
.faq-scene img { aspect-ratio: 16 / 9; border: 1px solid #d2d5c9; border-radius: 2px; display: block; height: auto; object-fit: cover; width: 100%; }
.faq-group-heading-homes .faq-scene img { aspect-ratio: 3 / 2; }
.faq-scene figcaption { color: #66695e; font-size: .7rem; line-height: 1.35; margin-top: .35rem; }
.faq-group-heading.has-faq-scene > a { grid-column: 1; grid-row: 3; justify-self: start; }
@media (max-width: 42rem) {
  .faq-group-heading-children { display: grid; grid-template-columns: minmax(0, 1fr) 40px; row-gap: .25rem; }
  .faq-group-heading-children h2 { grid-column: 1; grid-row: 1; }
  .faq-group-sun { grid-column: 2; grid-row: 1; height: 40px; margin-left: .3rem; width: 40px; }
  .faq-group-heading-children > a { grid-column: 1 / -1; grid-row: 2; justify-self: start; }
  .faq-group-heading.has-faq-scene { column-gap: 0; grid-template-columns: minmax(0, 1fr); row-gap: .55rem; }
  .faq-group-heading.has-faq-scene h2 { grid-column: 1; grid-row: 1; }
  .faq-group-seedhead { grid-column: 1; grid-row: 2; margin-top: -.25rem; }
  .faq-scene { grid-column: 1; grid-row: 3; max-width: 18rem; }
  .faq-group-heading.has-faq-scene > a { grid-column: 1; grid-row: 4; }
}

.faq-main .faq-layout { gap:2.5rem; padding-top:32px; padding-bottom:64px; }
.faq-main .faq-group { margin-bottom:40px; }
.faq-main .faq-group-heading { padding:.9rem 0 1rem; }
.faq-main .faq-group-heading h2 { font-size:clamp(2rem,3vw,2.75rem); max-width:19ch; line-height:1.08; }
.faq-main .faq-group-heading > a { display:inline-flex; align-items:center; min-height:44px; }
.faq-main .faq-item summary { min-height:44px; padding:1rem 0; }
.faq-main .faq-group-heading-land { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.25rem 1rem; align-items:center; }
.faq-group-heading-land h2 { grid-column:1; grid-row:1; }
.faq-group-heading-land .faq-group-seedhead { grid-column:1; grid-row:2; margin:0; }
.faq-main .faq-group-heading-land > a { grid-column:2; grid-row:1 / span 2; }

@media (max-width:52rem) {
 .faq-main .faq-layout { padding:28px 1.25rem 48px; }
 .faq-main .faq-index { display:none; }
 .faq-main .faq-group { margin-bottom:28px; }
 .faq-main .faq-group-heading h2 { font-size:2rem; }
 .faq-main .faq-group-heading > a { margin-top:.25rem; }
 .faq-main .faq-group-heading-land { grid-template-columns:minmax(0,1fr); }
 .faq-main .faq-group-heading-land > a { grid-column:1; grid-row:3; }
}
