/* HOME sections 02 and 03 only. No shared or other-section selectors. */
.home-questions .information-icon,.home-services .information-icon{display:block;width:24px;height:24px;flex:none;color:var(--navy)}
.home-questions .problem-layout{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:64px}
.home-questions .questions-intro{max-width:360px;min-width:0}
.home-questions .questions-intro p{font-size:17px;line-height:1.9;color:var(--slate);margin:0;word-break:keep-all;overflow-wrap:break-word}
.home-questions .questions-intro p+p{margin-top:26px}
.home-questions .questions-intro strong{font-weight:650;color:var(--navy)}
.home-questions .question-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;min-width:0}
.home-questions .question-grid article{display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:264px;padding:28px;border:0;border-radius:14px;background:#F0EDE6}
.home-questions .question-card-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.home-questions .question-grid .index{font-size:11px;line-height:1.6;letter-spacing:.1em;font-weight:650;color:var(--accent)}
.home-questions .question-keyword{font-size:13px;line-height:1.6;font-weight:550;color:var(--slate);margin:0}
.home-questions .question-grid h3{font-size:19px;line-height:1.65;font-weight:650;letter-spacing:-.035em;margin:8px 0 24px;word-break:keep-all;overflow-wrap:break-word}
.home-questions .question-grid .question-domain{font-size:13px;line-height:1.7;color:var(--slate);margin:0;margin-top:auto;padding-top:16px;border-top:1px solid #16283e1c;word-break:keep-all;overflow-wrap:break-word}
.home-services .service-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;align-items:stretch}
.home-services .service-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:28px 24px;border:1px solid var(--line);border-radius:8px;background:var(--white);transition:none}
.home-services .service-card:hover{background:var(--white);border-color:var(--navy)}
.home-services .service-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.home-services .service-card .card-top{display:flex;justify-content:space-between;align-items:center;width:100%;gap:16px;margin:0 0 24px}
.home-services .card-top .index{font-size:12px;line-height:1.7;font-weight:650;letter-spacing:.08em;color:var(--accent)}
.home-services .service-card .service-en{font-size:11px;line-height:1.6;letter-spacing:.005em;color:var(--slate);margin:0;word-break:normal}
.home-services .service-card h3{font-size:22px;line-height:1.5;font-weight:650;letter-spacing:-.045em;margin:9px 0 0;word-break:keep-all;overflow-wrap:break-word}
.home-services .service-card>p.service-description{font-size:15px;line-height:1.85;color:var(--slate);max-width:none;margin:16px 0 26px;word-break:keep-all;overflow-wrap:break-word}
.home-services .service-output{border-top:1px solid var(--line);padding-top:20px;margin-top:auto;width:100%}
.home-services .service-output>span{font-size:11px;line-height:1.7;font-weight:600;color:var(--slate)}
.home-services .service-output ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin:13px 0 0;padding:0}
.home-services .service-output li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;color:var(--navy);margin:0;min-width:0;word-break:keep-all;overflow-wrap:break-word}
.home-services .service-output li::before{content:'';display:block;flex:none;width:8px;height:4px;border:solid var(--accent);border-width:0 0 1.5px 1.5px;transform:rotate(-45deg);margin-top:8px}
.home-services .service-card .card-link{font-size:13px;line-height:1.8;min-height:28px;margin-top:24px;gap:16px}
.home-services .card-link>span{font-size:20px;line-height:1;flex:none;font-weight:400}
@media(max-width:1200px){
 .home-services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .home-services .service-card{padding:30px}
 .home-services .service-card h3{font-size:23px}
}
@media(max-width:1000px){
 .home-questions .problem-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 .home-questions .questions-intro{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:none}
 .home-questions .questions-intro p+p{margin-top:0}
}
@media(max-width:760px){
 .home-questions .problem-layout{gap:28px}
 .home-questions .questions-intro{display:block}
 .home-questions .questions-intro p{font-size:16px;line-height:1.9}
 .home-questions .questions-intro p+p{margin-top:22px}
 .home-questions .question-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .home-questions .question-grid article{padding:26px;min-height:250px}
 .home-questions .question-card-top{margin-bottom:16px}
 .home-questions .question-grid h3{font-size:19px;margin-bottom:22px}
 .home-questions .question-grid .question-domain{font-size:13px}
 .home-services .service-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:18px}
 .home-services .service-card{padding:28px 26px}
 .home-services .service-card .service-en{font-size:12px}
 .home-services .service-card h3{font-size:24px}
 .home-services .service-card>p.service-description{font-size:16px;line-height:1.85}
 .home-services .service-output>span{font-size:12px}
 .home-services .service-output li{font-size:14px}
 .home-services .service-card .card-link{font-size:14px;min-height:32px}
}
@media(max-width:370px){
 .home-questions .question-grid article{padding:24px}
 .home-services .service-card{padding:26px 24px}
}
