/* ---------- interior page components ---------- */
.crumb{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:26px}
.crumb a{text-decoration:none;color:var(--muted)}
.crumb a:hover{color:var(--blue)}
.crumb span{color:var(--navy)}

.phero{padding:26px 0 58px;border-bottom:1px solid var(--rule)}
.phero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:end}
.phero h1{font-size:clamp(34px,4.6vw,56px);font-weight:800;margin-top:16px}
.phero h1 em{font-style:normal;color:var(--blue)}
.phero .lede{font-size:19px;color:var(--muted);margin-top:20px;max-width:34em}
.phero-side{border-left:2px solid var(--navy);padding-left:22px}
.phero-side dl{margin:0}
.phero-side dt{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.phero-side dd{margin:5px 0 18px;font-family:var(--display);font-size:16px;font-weight:600;line-height:1.3}
.phero-side dd:last-child{margin-bottom:0}
@media(max-width:900px){.phero-in{grid-template-columns:1fr;gap:32px}.phero-side{border-left:0;border-top:2px solid var(--navy);padding-left:0;padding-top:20px}}

.band{background:rgba(255,255,255,.45);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.prose{max-width:38em}
.prose h2{font-size:clamp(25px,3.1vw,36px);font-weight:700;margin-top:14px}
.prose h3{font-size:20px;font-weight:700;margin-top:30px}
.prose p{margin-top:16px;color:var(--muted)}
.prose p.first{color:var(--navy);font-size:18.5px}
.prose strong{color:var(--navy);font-weight:600}

.two{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
@media(max-width:900px){.two{grid-template-columns:1fr;gap:36px}}

.areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.areas span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--rule);background:var(--paper-lift);padding:8px 11px;border-radius:2px;color:var(--muted)}
.areas span.home{border-color:var(--blue);color:var(--blue-deep);background:#DEEBF6}

.tbl{width:100%;border-collapse:collapse;margin-top:8px}
.tbl th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:0 14px 12px 0;border-bottom:2px solid var(--navy)}
.tbl td{padding:15px 14px 15px 0;border-bottom:1px solid var(--rule);font-size:16px;vertical-align:top}
.tbl td:first-child{font-family:var(--display);font-weight:600;width:38%}
.tbl td small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--muted);margin-top:4px;font-weight:400}
@media(max-width:640px){.tbl td:first-child{width:44%}.tbl td{font-size:15px}}

.steps{counter-reset:s;margin-top:10px}
.step{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--rule)}
.step:first-child{border-top:1px solid var(--rule)}
.step-n{counter-increment:s;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--blue);padding-top:5px;min-width:28px}
.step-n:before{content:"0" counter(s)}
.step h3{font-size:19px;font-weight:700}
.step p{font-size:16px;color:var(--muted);margin-top:7px;line-height:1.55}

.faq{margin-top:8px}
.faq details{border-bottom:1px solid var(--rule);padding:0}
.faq details:first-of-type{border-top:1px solid var(--rule)}
.faq summary{
  list-style:none;cursor:pointer;padding:19px 34px 19px 0;position:relative;
  font-family:var(--display);font-weight:600;font-size:17.5px;letter-spacing:-.01em;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:4px;top:17px;font-family:var(--mono);font-size:19px;color:var(--blue);font-weight:400}
.faq details[open] summary:after{content:"–"}
.faq summary:hover{color:var(--blue-deep)}
.faq .a{padding:0 34px 22px 0;color:var(--muted);font-size:16.5px;margin:0}
.faq .a + .a{padding-top:0;margin-top:-8px}

.callout{border-left:3px solid var(--blue);background:var(--paper-lift);padding:20px 22px;margin-top:26px}
.callout p{margin:0;font-size:16.5px}
.callout b{font-family:var(--display)}

.next{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px;margin-top:10px}
.next a{display:block;text-decoration:none;border-top:2px solid var(--navy);padding-top:18px}
.next a span{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);display:block}
.next a b{display:block;font-family:var(--display);font-size:19px;font-weight:700;margin-top:8px;letter-spacing:-.015em}
.next a p{font-size:15.5px;color:var(--muted);margin-top:8px;line-height:1.45}
.next a:hover b{color:var(--blue)}
@media(max-width:820px){.next{grid-template-columns:1fr;gap:30px}}
