/* ── FAQ ─────────────────────────────────────────────────────
               Hairline rows, no cards. The open row earns a gold rule down
               its left edge and a faint warm wash, so the state reads
               structurally rather than as a box appearing. */
            .faq{border-top:1px solid var(--border);}
            .faq__item{border-bottom:1px solid var(--border);position:relative;
                transition:background .35s var(--ease-out);}
            .faq__item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;
                background:var(--gold);transform:scaleY(0);transform-origin:top;
                transition:transform .4s var(--ease-out);}
            .faq__item[open]{background:linear-gradient(90deg,rgba(196,160,82,.07),transparent 62%);}
            .faq__item[open]::before{transform:scaleY(1);}

            /* padding is CONSTANT — no shift on open. The gold rule and the
               wash carry the state; moving the type reads as jitter. */
            .faq__q{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;
                gap:var(--space-5);cursor:pointer;list-style:none;
                padding:var(--space-6);}
            .faq__q::-webkit-details-marker{display:none;}

            .faq__n{font-family:var(--serif);font-weight:300;font-size:1rem;line-height:1;
                color:var(--stone);letter-spacing:.04em;transition:color .35s var(--ease-out);
                min-width:1.6em;}
            .faq:not(.faq--numbered) .faq__n{display:none;}
            .faq__item[open] .faq__n,
            .faq__item:hover .faq__n{color:var(--gold);}

            .faq__qt{font-family:var(--serif);font-weight:400;
                font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.4;color:var(--ink);
                transition:color .3s var(--ease-out);}
            .faq__item:hover .faq__qt{color:var(--pink-dark);}

            /* + that rotates into a — on open. One element, two rules. */
            .faq__icon{position:relative;width:14px;height:14px;flex:none;
                align-self:center;transition:transform .4s var(--ease-out);}
            .faq__icon::before,
            .faq__icon::after{content:'';position:absolute;background:var(--gold);
                transition:opacity .3s var(--ease-out);}
            .faq__icon::before{left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;}
            .faq__icon::after{top:0;bottom:0;left:50%;width:1.5px;margin-left:-.75px;}
            .faq__item[open] .faq__icon{transform:rotate(180deg);}
            .faq__item[open] .faq__icon::after{opacity:0;}

            /* answer aligns under the question text, past the numeral */
            .faq__a{padding:0 var(--space-9) var(--space-7) var(--space-6);
                animation:faqReveal .4s var(--ease-out);}
            .faq--numbered .faq__a{padding-left:calc(var(--space-6) + 1.6em + var(--space-5));}
            .faq__a p{margin:0;color:var(--mid);line-height:1.78;font-size:1rem;max-width:66ch;}
            @keyframes faqReveal{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:none;}}

            /* on a dark/mauve ground */
            .section--dark .faq,.ctr-inc .faq,.golf-band .faq{border-top-color:rgba(255,255,255,.18);}
            .section--dark .faq__item,.ctr-inc .faq__item,.golf-band .faq__item{border-bottom-color:rgba(255,255,255,.18);}
            .section--dark .faq__qt,.ctr-inc .faq__qt,.golf-band .faq__qt{color:#fff;}
            .section--dark .faq__a p,.ctr-inc .faq__a p,.golf-band .faq__a p{color:rgba(255,255,255,.78);}
            .section--dark .faq__item[open],.ctr-inc .faq__item[open],.golf-band .faq__item[open]{
                background:linear-gradient(90deg,rgba(255,255,255,.06),transparent 62%);}

            @media (prefers-reduced-motion:reduce){
                .faq__item,.faq__item::before,.faq__q,.faq__n,.faq__qt,.faq__icon,
                .faq__icon::before,.faq__icon::after{transition:none;}
                .faq__a{animation:none;}
            }
            @media(max-width:560px){
                .faq__q{gap:var(--space-4);padding-left:var(--space-4);}
                .faq__a{padding-left:var(--space-4);padding-right:var(--space-5);}
                .faq--numbered .faq__a{padding-left:var(--space-4);}
            }
