:root {
            --beige:#F0EAD6;--tan:#D2B48C;--tan-dk:#b8956a;
            --rose:#BC4749;--rose-dk:#9b3a3c;
            --teal:#70A3A7;--teal-dk:#4e7d80;
            --charcoal:#403B33;--charcoal-lt:#5a5449;
        }


        /* ── HEADER ── */
        .header-nav{display:flex;align-items:center;gap:4px}

        /* ── HERO ── */
        .hero{background:linear-gradient(135deg,var(--charcoal),#5a5449);padding:32px 24px 28px;text-align:center;position:relative;overflow:hidden}
        .hero::before{content:'?';position:absolute;right:-20px;top:-30px;font-size:300px;font-weight:900;color:rgba(255,255,255,.03);font-family:'Fredoka',cursive;pointer-events:none;line-height:1}
        .hero-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(240,234,214,.6);margin-bottom:14px}
        .hero-title{font-family:'Fredoka',cursive;font-size:clamp(2.4rem,6vw,4rem);font-weight:700;color:white;line-height:1.1;margin-bottom:16px}
        .hero-title span{color:var(--tan)}
        .hero-sub{font-family:'Lora',serif;font-style:italic;font-size:1.05rem;color:rgba(240,234,214,.7);max-width:500px;margin:0 auto 32px;line-height:1.7}
        .hero-search{display:flex;gap:0;max-width:460px;margin:0 auto;border-radius:14px;overflow:hidden;box-shadow:0 6px 24px rgba(0,0,0,.3)}
        .hero-search input{flex:1;padding:15px 20px;border:none;font-family:'Inter',sans-serif;font-size:1rem;color:var(--charcoal);outline:none}
        .hero-search button{background:var(--rose);color:white;border:none;padding:15px 24px;font-weight:700;font-size:.95rem;cursor:pointer;transition:background .15s}
        .hero-search button:hover{background:var(--rose-dk)}

        /* ── CATEGORIES ── */
        .cats{padding:48px 24px 0;max-width:900px;margin:0 auto;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
        .cat-btn{padding:8px 20px;border-radius:999px;border:2px solid rgba(64,59,51,.15);background:white;font-weight:700;font-size:.82rem;cursor:pointer;transition:all .15s;color:var(--charcoal-lt)}
        .cat-btn:hover,.cat-btn.active{background:var(--charcoal);color:white;border-color:var(--charcoal)}
        .cat-btn.active{background:var(--rose);border-color:var(--rose)}

        /* ── FAQ GRID ── */
        .faq-section{padding:48px 24px 80px;max-width:900px;margin:0 auto}
        .faq-group{margin-bottom:48px}
        .faq-group-title{font-family:'Fredoka',cursive;font-size:1.3rem;font-weight:700;color:var(--charcoal);margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid rgba(64,59,51,.1);display:flex;align-items:center;gap:10px}
        .faq-item{background:white;border-radius:14px;margin-bottom:10px;border:1px solid rgba(64,59,51,.07);overflow:hidden;transition:box-shadow .2s}
        .faq-item:hover{box-shadow:0 4px 20px rgba(64,59,51,.1)}
        .faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;font-weight:700;font-size:.97rem;color:var(--charcoal);list-style:none;user-select:none}
        .faq-q::-webkit-details-marker{display:none}
        .faq-q::after{content:'+';font-size:1.4rem;font-weight:400;color:var(--teal);flex-shrink:0;transition:transform .2s}
        details[open] .faq-q::after{transform:rotate(45deg)}
        .faq-a{padding:0 22px 20px;font-size:.92rem;color:var(--charcoal-lt);line-height:1.75}
        .faq-a p{margin-bottom:10px}
        .faq-a p:last-child{margin-bottom:0}
        .faq-a a{color:var(--teal-dk);font-weight:600;text-decoration:underline;text-underline-offset:3px}
        .faq-a a:hover{color:var(--rose)}

        /* ── CONTACT STRIP ── */
        .contact-strip{background:var(--charcoal);padding:56px 24px;text-align:center}
        .contact-strip h2{font-family:'Fredoka',cursive;font-size:1.8rem;font-weight:700;color:white;margin-bottom:10px}
        .contact-strip p{font-family:'Lora',serif;font-style:italic;color:rgba(240,234,214,.65);margin-bottom:24px;font-size:.97rem}
        .btn-contact{display:inline-flex;align-items:center;gap:8px;background:var(--rose);color:white;font-weight:700;font-size:1rem;padding:14px 32px;border-radius:13px;box-shadow:0 4px 0 var(--rose-dk);transition:filter .15s,transform .12s}
        .btn-contact:hover{filter:brightness(1.1);transform:translateY(-2px)}

        /* ── FOOTER ── */
        footer{background:#2e2a24;padding:32px 24px;text-align:center}

        /* ── HIGHLIGHT ── */
        .highlight{background:rgba(112,163,167,.12);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;padding:12px 16px;margin:10px 0;font-style:italic}

        @media(max-width:640px){
            .header-nav{display:none}
            .hero-search{flex-direction:column;border-radius:14px}
            .hero-search input,.hero-search button{border-radius:11px}
        }
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:50%;transform:translateX(-50%);top:8px;width:auto;height:auto;padding:10px 20px;background:#BC4749;color:white;font-weight:700;font-size:.9rem;border-radius:8px;z-index:9999;text-decoration:none;white-space:nowrap}
.reveal{opacity:1!important;transform:none!important}

        /* Dark mode: data-theme="dark" on <html> (set by nav.js). Maps the
           white FAQ cards and their charcoal text onto the theme tokens. */
        [data-theme="dark"] .faq-group-title{color:var(--jv-text);border-bottom-color:var(--jv-line)}
        [data-theme="dark"] .faq-item{background:var(--jv-surface);border-color:var(--jv-line)}
        [data-theme="dark"] .faq-item:hover{box-shadow:0 4px 20px rgba(0,0,0,.3)}
        [data-theme="dark"] .faq-q{color:var(--jv-text)}
        [data-theme="dark"] .faq-a{color:var(--jv-text-muted)}
        [data-theme="dark"] .faq-a a{color:var(--jv-link)}
        [data-theme="dark"] .faq-a a:hover{color:#E88486}
        [data-theme="dark"] .cat-btn{background:var(--jv-surface);color:var(--jv-text-muted);border-color:var(--jv-line)}
        [data-theme="dark"] .cat-btn:hover{background:var(--jv-surface-2);color:var(--jv-text);border-color:var(--jv-line)}
        [data-theme="dark"] .cat-btn.active{background:var(--rose);color:#fff;border-color:var(--rose)}