/* Shared editorial layout for service pages; homepage styles remain independent. */
body{background:#fff;color:#183b42;word-break:keep-all;overflow-wrap:break-word}
body>header,body>main,body>footer{width:min(100%,1120px);max-width:1120px;margin-inline:auto;padding-inline:40px}
body>header{min-height:88px;padding-block:22px;border-bottom:1px solid #e4ebe7;gap:24px}
header .brand{font-size:20px;letter-spacing:-.04em}header>a:last-child:not(.brand){font-size:14px;text-decoration:none;border-bottom:1px solid #99afa5;padding-block:6px}
body>main{padding-top:28px;padding-bottom:0}main>nav[aria-label="현재 위치"]{font-size:12px;color:#71827c}
main>.hero{margin:32px 0 28px;padding:40px 0 44px;background:transparent;color:#183b42;border-radius:0;border-bottom:1px solid #dce7e0}
.hero .kicker{color:#52806c;font-size:11px;letter-spacing:.14em;margin:0 0 20px}
.hero h1{max-width:900px;font-size:clamp(29px,3.5vw,44px);line-height:1.4;margin:0 0 22px;letter-spacing:-.045em}
.hero p{max-width:700px;color:#5b7068;font-size:16px;line-height:1.85;margin:12px 0}
.button{background:#173d46;color:#fff;font-size:14px;padding:14px 22px;border-radius:4px;line-height:1.5;text-decoration:none;margin-top:12px}
.button:hover{background:#24545c}main>section:not(.hero){margin:0;padding:52px 0;border-bottom:1px solid #e5ece8}
main>section>h2{font-size:25px;line-height:1.5;letter-spacing:-.035em;margin:0 0 18px;max-width:800px}
main>section>p{max-width:760px;margin:12px 0 24px;color:#5b7068}
p,li,dd{line-height:1.9}h2[id],section[id]{scroll-margin-top:24px}
.grid{gap:20px;margin-top:24px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
.grid>.card{padding:24px;background:#f6f8f6;border:0;border-radius:6px;margin:0;min-width:0;box-shadow:none}
.card h3{font-size:17px;line-height:1.55;margin:0 0 12px}.card p{font-size:14px;line-height:1.9;color:#5b7068;margin:10px 0 0}
.grid>figure.card{padding:0;background:transparent}figure{min-width:0;margin:0}figure img{display:block;width:100%;max-height:380px;object-fit:contain!important;border-radius:5px!important;background:#f3f6f3}figcaption{font-size:13px;color:#61746b;margin-top:12px}
main img{max-width:100%;height:auto}.page-index{margin:0 0 12px;border-bottom:1px solid #e5ece8;padding:0 0 18px}.page-index summary{cursor:pointer;font-size:14px;color:#5b7068;padding:10px 0}.page-index .contents{margin:16px 0;gap:12px 24px}.page-index .contents a{font-size:13px}
main>.contents{gap:14px 24px;margin:0;padding:28px 0;border-bottom:1px solid #e5ece8;font-size:13px;line-height:1.8}.contents a{text-decoration:none;border-bottom:1px solid #b7c9bf}
.faq-list{border-top:1px solid #dce7e0}.faq-item{border-bottom:1px solid #dce7e0;padding:0}.faq-item summary{cursor:pointer;font-size:15px;font-weight:700;padding:20px 4px;line-height:1.7}.faq-item p{color:#5b7068;font-size:14px;padding:0 4px 20px;margin:0;max-width:760px}
main>.contact{margin:36px 0 48px!important;padding:32px!important;background:#f0f5f1;border:0!important;border-radius:6px}.contact h2{font-size:24px}.contact p{font-size:14px;margin-bottom:14px}
main>section>ol{padding-left:24px;max-width:780px}main>section>ol li{padding:8px 0 8px 8px;font-size:15px}
.guide-links a{font-size:17px;line-height:1.6}.guide-links{margin-top:28px}
#cases.section{padding-inline:0}#cases .service-cards{gap:28px;align-items:start}#cases .service-cards article{border-radius:6px;background:#fff;border:1px solid #e4ebe7}#cases .service-cards article>a img{border-radius:0!important}#cases .service-cards h3{font-size:20px}#cases .service-cards p{font-size:14px;color:#5b7068}#cases .case-photos figure{border-radius:4px}
body>footer{padding-top:32px;padding-bottom:120px;color:#6d7f76;font-size:12px;border-top:0}footer p{font-size:12px}footer .admin-entry{margin-left:18px}
.consultation-dock{box-shadow:0 3px 18px #12343b12;border-radius:8px;padding:6px}.consultation-dock a{font-size:13px;padding:10px 14px;border-radius:4px}
summary:focus-visible,a:focus-visible{outline:3px solid #27866b;outline-offset:4px}
@media(max-width:650px){body>header,body>main,body>footer{padding-inline:22px}body>header{min-height:74px;flex-wrap:wrap;gap:12px}header .brand{font-size:18px}header nav{font-size:12px}main>.hero{padding:26px 0 30px;margin-top:24px}.hero h1{font-size:30px}.hero p{font-size:14px}.hero h1 br{display:none}.grid{grid-template-columns:1fr;gap:16px}main>section:not(.hero){padding-block:36px}main>section>h2{font-size:22px}.grid>.card{padding:22px}.grid>figure.card{padding:0}main>.contact{padding:24px!important;margin-block:28px!important}#cases .service-cards{grid-template-columns:1fr}.page-index .contents{display:grid;gap:14px}footer .admin-entry{display:table;margin-left:0}.consultation-dock{padding:6px}main>.hero .button{font-size:13px}}

.service-detail{border-top:1px solid #dce7e0;margin-top:20px}.service-detail>summary{cursor:pointer;min-height:44px;padding:14px 0;font-size:14px;color:#31574b}.service-detail>.grid{margin-top:8px}
