/* Service FAQ: accordion with a toy toggle (padlock opens, stopwatch hand spins, box lid lifts).
   Answers collapse only once sec-faq.js has set data-jp-ready (no JS = all answers open). */
.jp-sec-faq{background:var(--light);color:var(--ink);padding:120px 0}
.jp-sec-faq .faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px;align-items:start}
.jp-sec-faq .faq-side h2{color:var(--ink)}
.jp-sec-faq .faq-side p{margin:20px 0 26px;color:#2e3d48;font-size:17px}
.jp-sec-faq .btn{white-space:normal;text-align:left}
.jp-sec-faq .qa{display:grid;gap:14px}
.jp-sec-faq .qa-item{background:#fff;border:3px solid var(--ink);border-radius:20px;box-shadow:5px 5px 0 var(--ink);transition:transform .6s var(--spring),box-shadow .3s}
.jp-sec-faq.toy-lock .qa-item.open{box-shadow:8px 8px 0 var(--blue);transform:translateX(-4px)}
.jp-sec-faq.toy-watch .qa-item.open{box-shadow:8px 8px 0 var(--sun);transform:rotate(-.5deg)}
.jp-sec-faq.toy-box .qa-item.open{box-shadow:8px 8px 0 var(--sun);transform:rotate(.5deg)}
.jp-sec-faq .qa-item h3{font-size:inherit;letter-spacing:0;margin:0}
.jp-sec-faq .qa-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;margin:0;background:none;border:0;box-shadow:none;font:700 clamp(17px,1.7vw,20px)/1.25 var(--jp-display);letter-spacing:normal;text-transform:none;color:var(--ink);text-align:left;cursor:pointer;border-radius:18px;white-space:normal}
.jp-sec-faq .qa-q:hover,.jp-sec-faq .qa-q:focus{background:none;color:var(--ink)}
.jp-sec-faq .qa-q > span{flex:1 1 auto;min-width:0}
.jp-sec-faq .toy{flex-shrink:0;width:40px;height:44px;overflow:visible}
.jp-sec-faq .pad .shackle{transform-origin:31px 20px;transition:transform .6s var(--spring)}
.jp-sec-faq .pad .body{transition:fill .3s}
.jp-sec-faq .open .pad .shackle{transform:translateY(-5px) rotate(28deg)}
.jp-sec-faq .open .pad .body{fill:var(--blue)}
.jp-sec-faq .watch .hand{transform-box:view-box;transform-origin:20px 26px;transition:transform .8s var(--spring)}
.jp-sec-faq .open .watch .hand{transform:rotate(360deg)}
.jp-sec-faq .watch .face{transition:fill .3s}
.jp-sec-faq .open .watch .face{fill:var(--sun)}
.jp-sec-faq .bx{width:42px;height:42px}
.jp-sec-faq .bx .lid{transform-box:view-box;transform-origin:6px 16px;transition:transform .6s var(--spring)}
.jp-sec-faq .open .bx .lid{transform:rotate(-38deg)}
.jp-sec-faq .bx .bd{transition:fill .3s}
.jp-sec-faq .open .bx .bd{fill:var(--blue)}
.jp-sec-faq .qa-a p{padding:0 20px 20px;color:#2e3d48;font-size:16px}
.jp-sec-faq .qa-a a{color:var(--navy);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.jp-sec-faq[data-jp-ready] .qa-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--out)}
.jp-sec-faq[data-jp-ready] .open .qa-a{grid-template-rows:1fr}
.jp-sec-faq[data-jp-ready] .qa-a > div{overflow:hidden;visibility:hidden;transition:visibility 0s .5s}
.jp-sec-faq[data-jp-ready] .open .qa-a > div{visibility:visible;transition-delay:0s}
@media (max-width:1020px){
  .jp-sec-faq .faq-grid{grid-template-columns:minmax(0,1fr)}
}
