/* ACASH subpage layer — same design language as style.css (paper / ink / blue / yellow) */

/* placeholder value that must be replaced by the operator */
.ph{background:#fff8c8;border-bottom:1px dashed #c8a91b;padding:0 3px;font-weight:600;white-space:nowrap}

/* ---------- breadcrumb ---------- */
.breadcrumb{font-size:12px;color:#52554c;padding:16px 0 0}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0}
.breadcrumb li+li:before{content:'›';margin-right:7px;color:#b3b5a8}
.breadcrumb a{color:#52554c}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb [aria-current]{color:var(--ink);font-weight:600}

/* ---------- page hero ---------- */
.pagehero{border-bottom:1px solid var(--line);padding:38px 0 46px}
.pagehero .eyebrow{margin-bottom:16px}
.pagehero h1{font-size:46px;line-height:1.24;letter-spacing:-2.6px;margin-bottom:18px}
.pagehero .lede{font-size:16px;line-height:1.95;color:#5f6158;max-width:760px;margin-bottom:0}
.meta-line{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:22px;font-size:11px;color:#52554c}
.meta-line span{display:inline-flex;align-items:center;gap:6px}
.meta-line b{color:var(--ink);font-weight:600}

/* ---------- document layout ---------- */
.doc{padding:52px 0 96px}
.doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:52px;align-items:start}
.doc-body{min-width:0}
.doc-body h2{font-size:31px;line-height:1.35;letter-spacing:-1.5px;margin:58px 0 18px;padding-top:22px;border-top:1px solid var(--line);scroll-margin-top:110px}
.doc-body h2:first-of-type{border-top:0;padding-top:0;margin-top:0}
.doc-body h3{font-size:20px;letter-spacing:-.9px;margin:32px 0 12px;scroll-margin-top:110px}
.doc-body h4{font-size:16px;margin:24px 0 8px}
.doc-body p{font-size:16px;line-height:1.85;color:#454a3f;margin-bottom:15px}
.doc-body strong{color:var(--ink);font-weight:600}
.doc-body ul,.doc-body ol{margin:0 0 18px;padding-left:22px}
.doc-body li{font-size:16px;line-height:1.75;color:#454a3f;margin-bottom:8px}
.doc-body li strong{color:var(--ink)}
.doc-body a:not(.button):not(.doc-card):not(.text-link){color:var(--blue);border-bottom:1px solid #c3d0f7}
.doc-body a:not(.button):hover{border-bottom-color:var(--blue)}
.answer{font-size:16px;line-height:1.85;color:var(--ink);background:#f6f8f2;border-left:3px solid var(--blue);padding:18px 22px;margin:0 0 20px;border-radius:0 7px 7px 0}

/* ---------- table of contents (aside) ---------- */
.toc{position:sticky;top:112px;border:1px solid var(--line);border-radius:9px;padding:22px 22px 24px;background:#fbfcf7}
.toc h2{font-size:13px;letter-spacing:1.4px;color:var(--blue);margin:0 0 14px;font-weight:800;border:0;padding:0}
.toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.toc li{counter-increment:toc;margin-bottom:11px}
.toc li:before{content:counter(toc,decimal-leading-zero);color:#a9ab9d;font-size:11px;font-weight:600;margin-right:9px}
.toc a{font-size:13px;line-height:1.6;color:#5f6158}
.toc a:hover{color:var(--blue)}
.toc .toc-cta{display:block;margin-top:20px;border-top:1px solid var(--line);padding-top:16px;font-size:12px;font-weight:600;color:var(--ink)}
.toc .toc-cta span{margin-left:8px}

/* ---------- callout ---------- */
.callout{border:1px solid var(--line);border-radius:9px;padding:24px 26px;margin:0 0 26px;background:#fbfcf7}
.callout h3{margin-top:0}
.callout p:last-child{margin-bottom:0}
.callout.warn{background:#fff9e6;border-color:#ecdca2}
.callout.warn .callout-tag{color:#a9761b}
.callout.stop{background:#fdf1f0;border-color:#e8c6c2}
.callout.stop .callout-tag{color:#b3402f}
.callout-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:1.4px;color:var(--blue);margin-bottom:9px}

/* ---------- data table ---------- */
.tablewrap{overflow-x:auto;margin:0 0 26px;border:1px solid var(--line);border-radius:9px}
table.data{width:100%;border-collapse:collapse;min-width:520px;font-size:15px}
table.data caption{caption-side:top;text-align:left;font-size:12px;color:#52554c;padding:0 0 10px}
table.data th,table.data td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
table.data thead th{background:#f1f3ed;font-size:12px;letter-spacing:.4px;white-space:nowrap}
table.data tbody th{font-weight:600;background:#fbfcf7;white-space:nowrap}
table.data tbody tr:last-child th,table.data tbody tr:last-child td{border-bottom:0}
table.data td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.table-note{font-size:11px;color:#8b8d80;margin:-16px 0 26px}

/* ---------- card grid ---------- */
.cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 26px}
.cardgrid.two{grid-template-columns:repeat(2,1fr)}
.doc-card{display:block;border:1px solid var(--line);border-radius:9px;padding:24px 24px 22px;background:#fff;transition:transform .2s,border-color .2s}
.doc-card:hover{transform:translateY(-3px);border-color:var(--ink)}
.doc-card .card-tag{font-size:10px;font-weight:800;letter-spacing:1.3px;color:var(--blue);display:block;margin-bottom:10px}
.doc-card h3{font-size:18px;letter-spacing:-.8px;margin:0 0 9px}
.doc-card p{font-size:13px;line-height:1.8;color:#6b6d63;margin:0 0 14px}
.doc-card .more{font-size:12px;font-weight:600;color:var(--ink)}
.doc-card .more span{margin-left:7px}

/* ---------- checklist ---------- */
.checklist{border:1px solid var(--line);border-radius:9px;padding:8px 26px 20px;margin:0 0 26px;background:#fbfcf7}
.checklist li{list-style:none;position:relative;padding-left:30px;margin-bottom:13px}
.checklist li:before{content:'☐';position:absolute;left:0;top:0;font-size:17px;color:var(--blue);line-height:1.6}
.checklist li b{display:block;color:var(--ink);font-size:14px}
.checklist li span{font-size:13px;color:#6b6d63;line-height:1.75}
.danger-list li:before{content:'✕';color:#b3402f;font-size:13px;line-height:1.9}

/* ---------- fee calculator ---------- */
.feecalc{border:2px solid var(--ink);border-radius:11px;padding:28px 30px 30px;margin:0 0 26px;background:#fff}
.feecalc-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:20px;flex-wrap:wrap}
.feecalc-head h3{margin:0;font-size:22px;letter-spacing:-1px}
.feecalc-head span{font-size:11px;color:#52554c}
.calc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}
.calc-field label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}
.calc-field input,.formbox input,.formbox select,.formbox textarea{width:100%;border:1px solid #c9cbbd;border-radius:6px;padding:12px 14px;font-size:15px;background:#fff;color:var(--ink)}
.calc-field input:focus,.formbox input:focus,.formbox select:focus,.formbox textarea:focus{outline:3px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
.calc-field .hint{font-size:11px;color:#8b8d80;margin-top:6px}
.calc-out{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;border-top:1px solid var(--line);padding-top:20px}
.calc-out div{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#fbfcf7}
.calc-out dt{font-size:11px;color:#52554c;margin-bottom:6px}
.calc-out dd{margin:0;font-size:24px;font-weight:800;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.calc-out dd.blue{color:var(--blue)}
.calc-foot{font-size:11px;color:#8b8d80;margin:16px 0 0;line-height:1.8}

/* ---------- fee example table ---------- */
.rate-note{font-size:13px;line-height:1.9;color:#5f6158}

/* ---------- step flow ---------- */
.stepflow{margin:0 0 26px;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.stepflow li{list-style:none;display:grid;grid-template-columns:64px 1fr;gap:18px;padding:22px 26px;border-bottom:1px solid var(--line);background:#fff}
.stepflow li:last-child{border-bottom:0}
.stepflow .sn{width:44px;height:44px;border-radius:9px;background:var(--yellow);border:2px solid #e7d642;display:grid;place-items:center;font-size:16px;font-weight:800;color:var(--ink)}
.stepflow h3{margin:0 0 6px;font-size:17px;letter-spacing:-.7px}
.stepflow p{margin:0;font-size:13px;line-height:1.85;color:#6b6d63}
.stepflow .who{display:inline-block;font-size:10px;font-weight:600;color:var(--blue);border:1px solid #c3d0f7;border-radius:20px;padding:2px 9px;margin-top:9px}

/* ---------- business info ---------- */
.bizinfo{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:0 0 26px}
.bizinfo div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:13px 20px;border-bottom:1px solid var(--line);font-size:13px}
.bizinfo div:last-child{border-bottom:0}
.bizinfo dt{color:#52554c;font-weight:600}
.bizinfo dd{margin:0}

/* ---------- contact / form ---------- */
.contactgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 30px}
.contactbox{border:1px solid var(--line);border-radius:9px;padding:24px 24px 22px;background:#fbfcf7}
.contactbox .card-tag{font-size:10px;font-weight:800;letter-spacing:1.3px;color:var(--blue);display:block;margin-bottom:10px}
.contactbox h3{margin:0 0 8px;font-size:18px;letter-spacing:-.7px}
.contactbox p{font-size:13px;color:#6b6d63;line-height:1.8;margin:0 0 14px}
.formbox{border:1px solid var(--line);border-radius:9px;padding:28px 30px 30px;background:#fff}
.formbox h3{margin-top:0}
.formrow{margin-bottom:18px}
.formrow>label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}
.formrow .req{color:var(--blue);margin-left:4px;font-size:11px}
.formrow .hint{font-size:11px;color:#8b8d80;margin-top:6px;line-height:1.7}
.formrow.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.consent{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 20px;font-size:12px;line-height:1.85;color:#5f6158}
.consent label{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink);font-weight:600;margin-bottom:8px}
.consent input{width:19px;height:19px;margin-top:2px;flex:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formstatus{font-size:13px;line-height:1.8;margin:14px 0 0;padding:14px 16px;border-radius:7px;display:none}
.formstatus.on{display:block;background:#f1f3ed;border:1px solid var(--line)}
.formstatus.bad{background:#fdf1f0;border-color:#e8c6c2;color:#8d3025}

/* ---------- guide grid ---------- */
.guidegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 20px}

/* ---------- related links ---------- */
.related{border-top:1px solid var(--line);margin-top:56px;padding-top:30px}
.related h2{border:0;padding:0;margin:0 0 18px;font-size:19px;letter-spacing:-.8px}
.related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.related a{display:inline-block;border:1px solid var(--line);border-radius:30px;padding:9px 16px;font-size:13px;background:#fbfcf7}
.related a:hover{border-color:var(--ink);background:#f1f3ed}
.related a span{margin-left:7px;color:var(--blue)}

/* ---------- cta band ---------- */
.cta-band{background:var(--ink);color:#fff;border-radius:11px;padding:38px 40px;margin:46px 0 0;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cta-band h2{color:#fff;margin:0 0 10px;font-size:27px;letter-spacing:-1.2px}
.cta-band p{color:#cdcfc4;font-size:13px;line-height:1.85;margin:0;max-width:560px}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap}
.cta-band .button{background:var(--yellow);color:var(--ink)}
.cta-band .button:hover{background:#f2e63f;transform:translateY(-3px)}
.cta-band .button.ghost{background:transparent;color:#fff;border:1px solid #6b6f62}
.cta-band .button.ghost:hover{background:#2c302a}

/* ---------- footer additions ---------- */
.footer-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:24px}
.footer-cols h2{font-size:11px;letter-spacing:1.4px;color:var(--blue);font-weight:800;margin:0 0 13px}
.footer-cols ul{list-style:none;margin:0;padding:0}
.footer-cols li{margin-bottom:8px;font-size:13px}
.footer-cols a:hover{color:var(--blue)}
.bizline{font-size:12px;line-height:1.9;color:#6b6d63}

/* ---------- mobile fixed CTA ---------- */
.mobilebar{display:none}

/* ---------- responsive ---------- */
@media(max-width:1080px){
	.doc-layout{grid-template-columns:1fr;gap:0}
	.toc{position:static;margin-bottom:34px}
	.cardgrid,.guidegrid,.contactgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
	.pagehero{padding:26px 0 32px}
	.pagehero h1{font-size:33px;letter-spacing:-1.8px}
	.doc{padding:36px 0 72px}
	.doc-body h2{font-size:25px;margin:44px 0 15px}
	.doc-body h3{font-size:18px}
	.doc-body p,.doc-body li{font-size:14px}
	.toc{display:none}
	.cardgrid,.guidegrid,.cardgrid.two,.contactgrid{grid-template-columns:1fr}
	.calc-grid,.calc-out{grid-template-columns:1fr}
	.stepflow li{grid-template-columns:44px 1fr;gap:12px;padding:18px 18px}
	.stepflow .sn{width:36px;height:36px;font-size:14px}
	.bizinfo div{grid-template-columns:1fr;gap:3px}
	.formbox{padding:22px 20px 24px}
	.formrow.two{grid-template-columns:1fr}
	.cta-band{padding:28px 24px}
	.footer-cols{grid-template-columns:1fr 1fr;gap:24px}
	.mobilebar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;gap:9px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:rgba(255,254,248,.97);border-top:1px solid var(--ink)}
	.mobilebar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border-radius:7px;font-size:14px;font-weight:600}
	.mobilebar a:first-child{background:var(--ink);color:#fff}
	.mobilebar a:last-child{background:var(--yellow);color:var(--ink);border:1px solid var(--ink)}
	body{padding-bottom:72px}
}
@media(prefers-reduced-motion:reduce){.doc-card:hover{transform:none}}

/* ---------- home 5-step row (extends .steps) ---------- */
.steps.five{grid-template-columns:repeat(5,1fr)}
@media(max-width:1080px){.steps.five{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.steps.five{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.steps.five{grid-template-columns:1fr}}

/* ---------- accessibility: 44px minimum touch target ---------- */
.nav-cta,.menu-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.nav-cta{padding:9px 16px}
.related a,.contactbox .text-link,.doc-card .more,.toc .toc-cta{min-height:44px;display:inline-flex;align-items:center}
.toc .toc-cta{display:flex}
.doc-card p{font-size:14px}
.breadcrumb a{display:inline-block;min-height:32px;padding:6px 0}
