.detail-page .brand img{width:32px;height:32px;object-fit:contain}
.detail-page .nav-links a.button{color:#fff}
.detail-page .skip-link{position:absolute;top:12px;left:12px;z-index:100;transform:translateY(-160%);background:#202124;color:#fff;padding:10px 18px;border-radius:20px}
.detail-page .skip-link:focus{transform:none}
.detail-page .breadcrumb{display:flex;gap:11px;align-items:center;padding-top:30px;color:#71757c;font-size:12px}
.detail-page .breadcrumb a:hover{text-decoration:underline}
.detail-hero{max-width:770px;padding:48px 0 62px}
.detail-kicker{font-size:12px;color:#6b786e;letter-spacing:.07em;margin-bottom:15px}
.detail-hero h1{font-size:clamp(34px,4.4vw,55px);font-weight:520;line-height:1.3;letter-spacing:-1.8px}
.detail-lead{max-width:650px;font-size:17px;color:#70757d;line-height:1.9;margin-top:22px}
.detail-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.detail-tabs a{border:1px solid #e7e9e7;padding:7px 16px;border-radius:24px;font-size:12px;color:#5c6561}
.detail-tabs a:hover{background:#f6f7f5}
.detail-section{padding:54px 0;border-top:1px solid var(--line,#e9eaec);scroll-margin-top:30px}
.detail-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-bottom:30px}
.detail-section h2,.detail-cta h2{font-size:29px;line-height:1.5;font-weight:520;letter-spacing:-.8px}
.detail-section-heading>p{color:#70757d;font-size:14px;line-height:1.9;padding-top:5px}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.detail-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-card{border-radius:18px;background:#f6f7f5;padding:28px;min-width:0}
.detail-card .card-index{display:block;color:#6b716d;font-size:12px;margin-bottom:25px;font-variant-numeric:tabular-nums}
.detail-card h3{font-size:18px;font-weight:540;line-height:1.6;margin-bottom:10px}
.detail-card p{font-size:13px;line-height:1.9;color:#6b7078}
.detail-card .detail-card-foot{font-size:11px;padding-top:22px;color:#68726b}
.detail-note{font-size:12px;line-height:1.9;color:#71757b;margin-top:20px}
.detail-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:6px 0 0}
.detail-flow li{border-left:1px solid #dce1dc;padding-left:20px}
.detail-flow span{display:block;font-size:11px;color:#6c7870;margin-bottom:8px}
.detail-flow strong{display:block;font-size:16px;font-weight:530;margin-bottom:7px}
.detail-flow p{font-size:13px;color:#70757d;line-height:1.9}
.detail-cta{padding:65px 0 85px;text-align:center}
.detail-cta p{font-size:14px;color:#70757d;margin:15px 0 23px}
.detail-page .footer{border-top:1px solid var(--line,#e9eaec);padding-top:25px;padding-bottom:28px}
.detail-page .footer-left span{font-size:11px}
.detail-page .footer-links{flex-wrap:wrap}
.solution-row{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;padding:15px 0}
.solution-copy h2{margin:12px 0 18px}
.solution-copy p{font-size:14px;color:#70757d;line-height:1.9}
.solution-tag{display:inline-block;background:#eef2ed;border-radius:20px;color:#656f60;padding:4px 11px;font-size:10px}
.solution-board{border:1px solid #e2e6e1;border-radius:18px;background:#fbfcfa;padding:25px 28px}
.solution-board-title{display:flex;justify-content:space-between;gap:20px;padding-bottom:17px;font-size:12px;color:#56665c;border-bottom:1px solid #e4e8e2}
.solution-board-title small{font-weight:400;color:#6e7470;font-size:10px}
.solution-board dl{margin:3px 0 0}
.solution-board dl>div{padding:15px 0;border-bottom:1px solid #edf0eb;display:grid;grid-template-columns:90px 1fr;gap:15px}
.solution-board dl>div:last-child{border-bottom:0;padding-bottom:1px}
.solution-board dt{font-size:12px;color:#526057}
.solution-board dd{margin:0;font-size:12px;line-height:1.8;color:#6d756f}
.faq-list{max-width:850px;margin:0 auto 55px}
.faq-item{border-top:1px solid var(--line,#e9eaec);padding:0}
.faq-item:last-child{border-bottom:1px solid var(--line,#e9eaec)}
.faq-item summary{font-size:16px;font-weight:500;padding:23px 35px 23px 0;cursor:pointer;position:relative;list-style:none;line-height:1.7}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"＋";position:absolute;right:0;top:23px;font-size:19px;font-weight:300;color:#6f7770}
.faq-item[open] summary::after{content:"−"}
.faq-item p{font-size:14px;line-height:2;color:#70757d;padding:0 35px 25px 0;max-width:780px}
.faq-item a{color:#526f5c;text-decoration:underline;text-underline-offset:3px}
.contact-layout{display:grid;grid-template-columns:1fr .9fr;gap:90px;padding:20px 0 90px;align-items:start}
.contact-copy{padding-top:25px}
.contact-copy h2{font-size:25px;font-weight:530;letter-spacing:-.5px}
.contact-copy>p{font-size:14px;color:#6f767c;line-height:1.9;margin-top:16px;max-width:390px}
.contact-steps{list-style:none;margin:32px 0 28px;padding:0;display:grid;gap:22px}
.contact-steps li{display:flex;gap:17px;align-items:baseline;font-size:14px;color:#69736d}
.contact-steps span{font-size:11px;color:#707671;font-variant-numeric:tabular-nums}
.contact-card{background:#f6f7f5;border:1px solid #eef0ec;border-radius:24px;padding:25px 30px 27px;text-align:center;margin:0}
.contact-card img{display:block;width:100%;height:auto;max-width:310px;margin:0 auto;border-radius:14px}
.contact-card figcaption{font-size:13px;color:#69726a;padding-top:19px}
.contact-card-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:15px;font-size:12px}
.contact-card-actions a{padding:6px 12px;border-radius:20px;background:#fff;color:#5e7264;border:1px solid #e5eae2}
.contact-copy .detail-note{font-size:12px;max-width:390px}
.error-page{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:70px 0}
.error-page .detail-kicker{font-size:13px}
.error-page h1{font-size:clamp(32px,5vw,50px);font-weight:500;letter-spacing:-1px}
.error-page p{font-size:14px;color:#6f767b;margin:17px 0 26px}
.error-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
@media(max-width:760px){
 .detail-page .wrap{width:calc(100% - 40px)}
 .detail-page .nav{height:72px;gap:12px}
 .detail-page .nav-links{gap:7px;font-size:12px}
 .detail-page .nav-links a.button{display:inline-flex;padding:9px 16px;font-size:12px}
 .detail-page .brand{font-size:23px}
 .detail-page .breadcrumb{padding-top:22px;font-size:11px}
 .detail-hero{padding:36px 0 44px}
 .detail-hero h1{letter-spacing:-1px}
 .detail-lead{font-size:15px;margin-top:17px}
 .detail-section{padding:36px 0}
 .detail-section-heading{grid-template-columns:1fr;gap:12px;margin-bottom:25px}
 .detail-section h2,.detail-cta h2{font-size:25px}
 .detail-grid,.detail-grid.two{grid-template-columns:1fr}
 .detail-card{padding:25px}
 .detail-card .card-index{margin-bottom:16px}
 .detail-flow{grid-template-columns:1fr;gap:25px}
 .detail-cta{padding:45px 0 60px}
 .solution-row{grid-template-columns:1fr;gap:26px;padding:0}
 .solution-copy h2{margin-top:9px}
 .solution-board{padding:22px}
 .solution-board dl>div{grid-template-columns:72px 1fr;gap:12px}
 .faq-item summary{font-size:15px;padding-top:21px;padding-bottom:21px}
 .faq-item p{font-size:13px;padding-right:12px}
 .contact-layout{grid-template-columns:1fr;gap:35px;padding:0 0 60px}
 .contact-copy{padding-top:0}
 .contact-card{max-width:430px;width:100%;margin:0 auto;padding:24px}
 .detail-page .footer{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
 .detail-page .footer-links{display:flex;gap:20px;font-size:12px}
}
