/* Warm, illustrated FAQ navigation and conversation-style answers. */
.family-faq{background:linear-gradient(180deg,#f6f8f5 0%,#f7f9fc 38%,#fffefa 100%)}
.faq-reading-note{font-size:12px;color:#536875;margin-top:16px}
.faq-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.faq-tone-first{--faq-accent:#256d60;--faq-tint:#edf5ef;--faq-border:#c6ddd0}
.faq-tone-visit{--faq-accent:#2b6096;--faq-tint:#edf3fa;--faq-border:#c9dbee}
.faq-tone-daily{--faq-accent:#875531;--faq-tint:#fff4e3;--faq-border:#ebd8ba}
.faq-tone-schedule{--faq-accent:#6a537b;--faq-tint:#f5eff8;--faq-border:#dfd1e8}
.faq-categories .faq-topic{display:flex;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--faq-border);border-radius:24px 24px 24px 7px;padding:20px 22px;color:var(--ink,#243b50);box-shadow:0 5px 0 var(--faq-tint);transition:transform .22s,box-shadow .22s}
.faq-categories .faq-topic:hover{background:var(--faq-tint);transform:translateY(-4px);box-shadow:0 9px 0 #ffffff}
.faq-topic-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.faq-topic-top>span{font-family:Georgia,serif;font-size:30px;color:var(--faq-accent)}.faq-topic-top img{width:95px;height:66px;object-fit:contain}.faq-topic strong{font-size:16px;line-height:1.7;margin:16px 0 22px}.faq-topic-bottom{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--faq-accent);border-top:1px solid var(--faq-border);padding-top:13px}.faq-topic-bottom>span{font-size:21px}
.family-faq-list{max-width:1000px;margin-top:62px}.faq-group{margin:0 0 62px}.faq-group-heading{display:flex;align-items:center;gap:22px;margin-bottom:25px}.faq-group-art{width:112px;height:100px;display:grid;place-items:center;background:var(--faq-tint);border-radius:40% 55% 38% 50%;flex-shrink:0}.faq-group-art img{width:103px;height:78px;object-fit:contain}.faq-chapter{font-size:11px;letter-spacing:.12em;color:var(--faq-accent);font-weight:700}.faq-chapter>span{padding:0 7px;opacity:.5}.faq-group .faq-group-heading h3{border:0;padding:0;margin:7px 0 4px;font-size:24px;color:#243b50}.faq-group-heading p{font-size:13px;color:#526673;margin:0;line-height:1.7}
.family-faq-list details{border:1px solid #dce5e8;border-radius:18px;background:#fff;margin:12px 0;box-shadow:0 3px 10px #243b5004;transition:border-color .2s,box-shadow .2s}.family-faq-list details:hover{border-color:var(--faq-border);box-shadow:0 4px 16px #243b5009}.family-faq-list summary{display:flex;align-items:center;gap:18px;list-style:none;padding:20px 24px;font-size:15px;line-height:1.8}.family-faq-list summary::-webkit-details-marker{display:none}.faq-q{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;background:var(--faq-tint);color:var(--faq-accent);border-radius:12px;font-family:Georgia,serif;font-size:23px;font-weight:400}.faq-question-text{flex:1}.faq-toggle{position:relative;flex:0 0 28px;height:28px;border:1px solid var(--faq-border);border-radius:50%;color:var(--faq-accent)}.faq-toggle:before,.faq-toggle:after{content:"";position:absolute;background:currentColor;left:8px;right:8px;height:1.5px;top:12px}.faq-toggle:after{transform:rotate(90deg);transition:transform .2s}.family-faq-list details[open] .faq-toggle:after{transform:rotate(0)}.family-faq-list details[open]{border-color:var(--faq-border)}.family-faq-list details[open] summary{background:#fff}.family-faq-list details[open] .faq-q{background:var(--faq-accent);color:#fff}
.family-faq-list details>.faq-answer{display:flex;gap:17px;margin:0 24px 24px 78px;padding:22px 24px;background:var(--faq-tint);border-radius:0 18px 18px 18px;animation:faq-answer-in .24s ease-out}.faq-a{font-family:Georgia,serif;font-size:24px;line-height:1.45;color:var(--faq-accent);flex:0 0 20px}.family-faq-list .faq-answer p{font-size:14px;line-height:2.05;color:#304657}.family-faq-list summary:focus-visible,.faq-topic:focus-visible{outline:3px solid #1451ba;outline-offset:3px}
@keyframes faq-answer-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:960px){.faq-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-topic strong{margin:10px 0 16px}}
@media(max-width:700px){.faq-categories{gap:12px}.faq-categories .faq-topic{padding:16px;border-radius:19px 19px 19px 5px}.faq-topic-top img{width:66px;height:50px}.faq-topic-top>span{font-size:25px}.faq-topic strong{font-size:14px}.faq-topic-bottom{font-size:11px}.family-faq-list{margin-top:42px}.faq-group{margin-bottom:42px}.faq-group-heading{gap:14px}.faq-group-art{width:76px;height:76px}.faq-group-art img{width:72px;height:60px}.faq-group .faq-group-heading h3{font-size:19px;line-height:1.6}.faq-chapter{font-size:10px}.faq-group-heading p{font-size:12px}.family-faq-list summary{padding:18px 14px;gap:11px;font-size:14px}.faq-q{flex-basis:29px;width:29px;height:29px;font-size:20px;border-radius:10px}.faq-toggle{flex-basis:24px;height:24px}.faq-toggle:before,.faq-toggle:after{left:6px;right:6px;top:10px}.family-faq-list details>.faq-answer{margin:0 14px 16px;padding:18px 16px;gap:10px}.family-faq-list .faq-answer p{font-size:14px}.faq-a{font-size:22px;flex-basis:17px}}
@media(prefers-reduced-motion:reduce){.faq-categories .faq-topic,.faq-toggle:after{transition:none}.family-faq-list details>.faq-answer{animation:none}.faq-categories .faq-topic:hover{transform:none}}
