@font-face{font-family:'Pretendard Variable';src:url('fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-synthesis:none}
body{font-weight:400;letter-spacing:-.015em;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,p,li,button,label{word-break:keep-all;overflow-wrap:normal}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
h1,.hero h1{font-weight:850;letter-spacing:-.045em;line-height:1.2}
h2{font-weight:800;letter-spacing:-.035em;line-height:1.3}
h3{font-weight:700;letter-spacing:-.025em;line-height:1.4}
strong,b{font-weight:750}
.button{font-weight:650;letter-spacing:-.015em;line-height:1.4}
.eyebrow,.number-label,.deliverable-label{font-weight:650}
.lead{font-weight:450;line-height:1.75}.lead strong{font-weight:750}
.section-heading{align-items:center}.section-heading>p{max-width:360px;line-height:1.75}
.purpose-tabs{gap:0;align-items:stretch}
.purpose-tabs button{min-width:0;min-height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 12px;line-height:1.3;letter-spacing:-.02em;font-weight:550;border-bottom-width:3px}
.purpose-tab-title{font-size:1.2rem;font-weight:700;white-space:nowrap}
.purpose-tab-detail{font-size:.94rem;font-weight:500;white-space:nowrap}
.purpose-tabs button[aria-selected=true] .purpose-tab-title{font-weight:800}
.purpose-tabs button[aria-selected=true] .purpose-tab-detail{font-weight:650}
.purpose-panel{padding:44px;gap:48px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}
.purpose-panel .number-label{font-size:.75rem;line-height:1.4;letter-spacing:.12em;margin-bottom:20px}
.purpose-panel #purpose-title{font-size:1.8rem;font-weight:750;text-wrap:pretty;line-height:1.4}
.purpose-panel #purpose-description{font-size:1rem;line-height:1.85;margin:18px 0 0}
.purpose-panel .preparation{padding-top:37px}
.purpose-panel .preparation h3{font-size:1.25rem;font-weight:700;line-height:2.016rem}
.preparation ul{line-height:1.8;margin:18px 0 24px;padding-left:20px}.preparation li+li{margin-top:8px}
.promise-banner h2{font-weight:800;line-height:1.4}.promise-banner em{font-weight:850}
.doc-number,.price-card .price{font-weight:850;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.deliverable-grid h3{font-weight:750}.deliverable-grid p{line-height:1.85}
@media(max-width:760px){
 h2{font-size:clamp(1.75rem,6.6vw,2.3rem);line-height:1.4;letter-spacing:-.03em}
 .hero h1{font-size:clamp(2.1rem,8.5vw,3.4rem);line-height:1.28}
 .section-heading>p{max-width:none}
 .purpose-tabs button{min-height:92px;padding:18px 6px;gap:6px}
 .purpose-tab-title{font-size:1.08rem}.purpose-tab-detail{font-size:.85rem}
 .purpose-panel{padding:30px 22px;gap:28px;grid-template-columns:minmax(0,1fr)}
 .purpose-panel #purpose-title{font-size:1.5rem;line-height:1.45}
 .purpose-panel .number-label{margin-bottom:14px}
 .purpose-panel .preparation{padding-top:24px;border-top:1px solid var(--line)}
 .purpose-panel .preparation h3{font-size:1.12rem;line-height:1.5}
 .purpose-panel #purpose-description{font-size:.96rem}
}

@media(max-width:760px){#tab-fda .purpose-tab-detail{white-space:normal;text-wrap:balance;line-height:1.4}}
.document-upload{margin:26px 0;padding:28px;border:1px solid var(--line);border-radius:14px;background:#f8faf5}.document-upload h3{font-size:1.4rem}.document-upload>p{font-size:.98rem;color:var(--muted)}.hometax-link{display:inline-flex;gap:12px;align-items:center;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:5px}.upload-zone{margin:22px 0;padding:22px;border:1px dashed #8aa58a;border-radius:10px;background:white}.upload-zone input{display:block;width:100%;margin-top:14px;font-size:.9rem}.upload-zone input::file-selector-button{padding:12px 16px;border:0;border-radius:6px;background:#eaf1df;color:var(--ink);font:inherit;font-weight:650;margin-right:12px;cursor:pointer}.application-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.application-fields label{display:grid;gap:9px;font-weight:650;font-size:.94rem}.application-fields input{min-width:0;width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;background:white;font:inherit}.application-privacy{font-size:.85rem;margin:22px 0 16px}.application-privacy summary{cursor:pointer}.application-privacy p{line-height:1.8}.document-upload .ack{display:flex;gap:10px;font-size:.92rem;line-height:1.65;align-items:start}.document-upload .ack input{margin-top:5px;flex-shrink:0}.payment-step{padding:26px;margin-top:22px;background:#eef4e5;border-radius:12px}.payment-step p{color:var(--muted)}.payment-step button:disabled{opacity:.65;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.document-upload{padding:22px 16px}.application-fields{grid-template-columns:1fr}.upload-zone{padding:18px 12px}.document-upload h3{font-size:1.25rem}.payment-step{padding:22px 16px}}

[hidden]{display:none!important}

.extraction-step{border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:22px}.extraction-step>p{font-size:.92rem;color:var(--muted)}.extraction-step dd{white-space:pre-wrap;overflow-wrap:anywhere}.extraction-step .order-summary div{grid-template-columns:110px minmax(0,1fr);align-items:start}
