/* ===== multi-página ===== */
.links a.active{color:var(--orange)}
.banner{position:relative;overflow:hidden;background:var(--orange);color:#fff;border-radius:28px;padding:64px 50px;margin-top:10px;display:flex;align-items:center}
.banner h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;letter-spacing:-.02em;margin:6px 0 10px}
.banner p{max-width:52ch;opacity:.95}
.banner .crumb{font-size:.85rem;font-weight:600;opacity:.9}
.banner .crumb a{text-decoration:none}
.banner-mark{position:absolute;right:-30px;bottom:-40px;width:340px}
.prose p{color:var(--muted);margin-bottom:16px;max-width:65ch}
.two{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.two img.round{border-radius:24px;width:100%;aspect-ratio:4/3;object-fit:cover}
.val-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:36px}
.val-list div{border-top:4px solid var(--orange);background:var(--soft2);border-radius:0 0 18px 18px;padding:22px}
.val-list div:nth-child(2n){border-color:var(--blue)}
.val-list div:nth-child(3n){border-color:var(--tan)}
.val-list h3{font-size:1.05rem;margin-bottom:6px}
.val-list p{font-size:.88rem;color:var(--muted)}
.why{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:36px}
.why > div{display:flex;gap:16px;align-items:flex-start}
.why b{flex:none;width:46px;height:46px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:1.1rem}
.why h3{font-size:1.08rem;margin-bottom:4px}
.why p{font-size:.9rem;color:var(--muted)}
.quote{background:var(--blue-d);color:#fff;border-radius:28px;display:grid;grid-template-columns:.7fr 1.3fr;overflow:hidden}
.quote .ph{background:#fff;display:flex;align-items:flex-end;justify-content:center}
.quote .ph img{max-height:380px;object-fit:contain}
.quote .tx{padding:50px}
.quote blockquote{margin:16px 0 24px;font-size:1.15rem;line-height:1.7}
.quote cite{font-style:normal;font-weight:700}
.quote small{display:block;color:#cfe0e8}
.sec-head{max-width:720px;margin-bottom:36px}
.sec-head p{color:var(--muted);margin-top:14px}
.area{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;padding:44px;border-radius:28px;background:var(--soft2);margin-bottom:26px;scroll-margin-top:110px}
.area:nth-of-type(2){background:var(--soft)}
.area .num{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:14px;color:#fff;margin-bottom:18px}
.area h2{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:14px}
.area .desc{color:var(--muted);margin-bottom:18px}
.area .for{font-size:.88rem;background:var(--card);border-radius:12px;padding:12px 16px;border-left:4px solid var(--orange)}
.area ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;align-content:start}
.area li{background:var(--card);border-radius:14px;padding:14px 16px 14px 46px;position:relative;font-size:.92rem;font-weight:500}
.area li::before{content:"";position:absolute;left:16px;top:16px;width:18px;height:18px;border-radius:5px;background:var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8l3 3 5-6' stroke='white' stroke-width='2' fill='none'/%3E%3C/svg%3E") center/13px no-repeat}
.svc a.more{display:inline-block;margin-top:18px;font-weight:700;font-size:.88rem;color:var(--orange);text-decoration:none}
.faq details{border:1px solid var(--line);border-radius:16px;padding:18px 22px;margin-bottom:12px;background:var(--card)}
.faq summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--orange);font-size:1.4rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--muted);margin-top:12px}
.cta-sec{padding:20px 0 90px}
.cta-box{background:var(--blue-d);color:#fff;border-radius:28px;padding:50px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cta-box h2{margin-bottom:8px}
.cta-box p{color:#cfe0e8;max-width:50ch}
.cta-btns{display:flex;gap:12px;flex-wrap:wrap}
.cta-box .btn{background:var(--orange)}
.btn.ghost{background:transparent!important;border:2px solid #fff}
.c-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:40px}
.c-cards{display:grid;gap:14px;margin-top:26px}
.c-card{display:flex;gap:16px;align-items:center;background:var(--soft2);border-radius:16px;padding:16px 18px;text-decoration:none}
.c-card i{width:46px;height:46px;border-radius:12px;background:var(--orange);color:#fff;display:grid;place-items:center;font-style:normal;font-size:1.2rem;flex:none}
.c-card small{display:block;color:var(--muted);font-size:.78rem}
.c-card span{font-weight:600;white-space:pre-line}
.form{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:32px;display:grid;gap:16px;box-shadow:0 20px 40px rgba(107,54,0,.07)}
.form label{display:grid;gap:6px;font-size:.85rem;font-weight:600}
.form input,.form select,.form textarea{font:400 .95rem "Montserrat",sans-serif;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);width:100%}
.form textarea{min-height:140px;resize:vertical}
.form .hp{position:absolute;left:-9999px}
.alert{padding:14px 18px;border-radius:12px;font-weight:600;font-size:.92rem}
.alert.ok{background:#E6F7E6;color:#1F6B1F}.alert.bad{background:#FDE8E4;color:#9A2A12}
.map{margin-top:40px;border-radius:24px;overflow:hidden;border:1px solid var(--line)}
.map iframe{width:100%;height:380px;border:0;display:block}
.site-foot{background:var(--soft2);padding:60px 0 30px;margin-top:20px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1.3fr 1.2fr;gap:30px}
.foot-grid h4{margin:0 0 12px;font-size:.95rem}
.foot-grid a,.foot-grid span{display:block;color:var(--muted);text-decoration:none;font-size:.88rem;margin-bottom:8px}
.foot-grid a:hover{color:var(--orange)}
.foot-grid p{color:var(--muted);font-size:.88rem;margin-top:14px}
.foot-logo{height:64px;background:#fff;border-radius:10px;padding:4px}
.foot-bottom{border-top:1px solid var(--line);margin-top:36px;padding-top:20px;font-size:.82rem;color:var(--muted)}
.wa{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,0,0,.2);z-index:40}
@media (max-width:980px){.two,.area,.c-grid,.quote{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}.why{grid-template-columns:1fr}}
@media (max-width:720px){.banner{padding:44px 26px}.area{padding:28px 22px}.quote .tx,.cta-box,.form{padding:28px 22px}.foot-grid{grid-template-columns:1fr}}
