.service-guide{border-top:1px solid var(--line);margin-top:48px;padding-block:48px 32px;color:var(--forest)}
main:has(>.service-guide)+.site-footer{margin-top:0}
.service-guide h2,.service-guide h3,.service-guide p{margin:0}
.service-guide h2,.service-guide h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em;text-wrap:balance;hyphens:none;overflow-wrap:normal}
.service-guide p{color:var(--muted);font-size:15px;line-height:1.85}
.service-guide p a{color:var(--forest);text-decoration:underline;text-underline-offset:4px}
.service-guide__intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;margin-bottom:36px}
.service-guide__eyebrow{display:block;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
.service-guide__intro h2{font-size:clamp(31px,3.3vw,44px);line-height:1.16;margin-bottom:20px}
.service-guide__hero{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.service-guide__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-guide__card{border:1px solid #e0e6dc;border-radius:18px;background:#fcfbf7;padding:26px 26px 30px}
.service-guide__card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.service-guide__number{display:flex;align-items:center;gap:12px;color:#8a6953;font-size:12px;letter-spacing:.12em}
.service-guide__number:after{content:'';width:34px;height:1px;background:#d8c7b6}
.service-guide__icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:#edf2e9}
.service-guide__icon svg{width:25px;height:25px;stroke-width:1.5}
.service-guide__card h3{font-size:25px;line-height:1.2;margin-bottom:16px;min-height:2.4em}
.service-guide__card p{font-size:14px;line-height:1.85}
.service-guide__planning{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:48px;margin-top:44px}
.service-guide__planning h2{font-size:clamp(27px,2.7vw,34px);line-height:1.2;margin-bottom:18px}
.service-guide__flow{align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-radius:18px;background:#eff4ed;padding:28px 24px}
.service-guide__flow .service-guide__eyebrow{font-size:10px;letter-spacing:.1em;line-height:1.7;margin-bottom:18px;text-align:left}
.service-guide__steps{--step-art-height:120px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none;position:relative}
.service-guide__steps:before{content:"";position:absolute;top:calc(var(--step-art-height) + 19px);left:16%;right:16%;border-top:1px dashed #8ca390}
.service-guide__steps li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;font-size:12px;line-height:1.6;min-width:0}

.service-guide__related{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding:24px 28px;border-radius:14px;background:#f8f7f2}
.service-guide__related-title{color:var(--muted);font-size:12px;line-height:1.7;flex:none}
.service-guide__links{display:flex;flex-wrap:wrap;gap:8px 26px}
.service-guide__link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px;line-height:1.6}
.service-guide__link svg{width:17px;height:17px;flex:none}
.service-guide a:hover{color:var(--forest-2)}
.service-guide__note{display:flex;align-items:flex-start;gap:12px;background:#fcf0e6;color:#76513a;border-radius:12px;padding:18px 22px;margin-top:20px;font-size:12px;line-height:1.75}
.service-guide__note svg{width:22px;height:22px;flex:none;margin-top:1px}
@media(max-width:1000px){.service-guide__intro{gap:24px}.service-guide__cards{gap:16px}.service-guide__card{padding:22px 20px 26px}.service-guide__card h3{font-size:23px}.service-guide__planning{gap:26px}.service-guide__related{align-items:flex-start;flex-direction:column;gap:8px}.service-guide__steps{gap:10px}}
@media(max-width:700px){.service-guide{margin-top:32px;padding-block:32px 24px}.service-guide__intro{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.service-guide__intro h2{font-size:32px}.service-guide__hero{max-width:440px;justify-self:center}.service-guide__cards{grid-template-columns:1fr;gap:18px}.service-guide__card{padding:24px}.service-guide__card-top{margin-bottom:18px}.service-guide__card h3{min-height:0;font-size:26px;margin-bottom:14px}.service-guide__card p{font-size:15px}.service-guide__planning{grid-template-columns:1fr;gap:24px;margin-top:34px}.service-guide__flow{padding:26px 20px}.service-guide__related{padding:20px 24px;margin-top:24px}.service-guide__links{display:grid;gap:2px}.service-guide__note{padding:16px;gap:10px}}
@media(prefers-reduced-motion:no-preference){.service-guide__link:hover svg{transform:translateX(3px)}.service-guide__link svg{transition:transform .15s ease}}

.service-guide__step-art{display:block;width:100%;height:var(--step-art-height);object-fit:contain;mix-blend-mode:multiply;margin:0 0 16px}
.service-guide__step-label{display:block;position:relative;width:100%;min-height:56px;padding-top:18px}
.service-guide__step-label:before{content:"";position:absolute;top:0;left:calc(50% - 3.5px);width:7px;height:7px;border-radius:50%;background:var(--forest);box-shadow:0 0 0 5px #eff4ed}
@media(max-width:1000px){.service-guide__steps{--step-art-height:100px;gap:8px}.service-guide__steps li{font-size:11px}}
@media(max-width:700px){.service-guide__steps{--step-art-height:110px;gap:10px}.service-guide__steps li{font-size:12px}}
@media(max-width:420px){.service-guide__steps{--step-art-height:86px;gap:6px}.service-guide__steps li{font-size:11px}}
