/* DPA hub components. Mobile first. */
.dpa-wrap{max-width:64rem;margin:0 auto;padding:0 1.25rem}
.dpa-sec{padding:3.5rem 0}
@media(min-width:768px){.dpa-sec{padding:4.5rem 0}}
.dpa-h2{font-size:1.75rem;line-height:1.2;font-weight:800;color:#1F1A17;margin-top:.9rem;letter-spacing:-.025em}
@media(min-width:768px){.dpa-h2{font-size:2.25rem}}
.dpa-h3{font-size:1.2rem;font-weight:700;color:#1F1A17;margin-top:1rem}
.dpa-p{margin-top:1rem;color:#3A322D;font-size:1.05rem;line-height:1.7}
.dpa-small{font-size:.85rem;color:#6B615A;line-height:1.6}
.dpa-list{margin-top:1rem;padding-left:1.25rem;list-style:disc;color:#3A322D;font-size:1.05rem;line-height:1.7}
.dpa-list li{margin-top:.5rem}
.dpa-grid{display:grid;gap:1.25rem;margin-top:2rem}
@media(min-width:768px){.dpa-grid.c2{grid-template-columns:1fr 1fr}.dpa-grid.c3{grid-template-columns:repeat(3,1fr)}}
.dpa-card{background:linear-gradient(180deg,#fff 0%,#FAF6F1 100%);border:1px solid rgba(236,228,218,.9);border-radius:1.25rem;padding:1.5rem;box-shadow:0 1px 2px rgba(31,26,23,.04),0 12px 32px rgba(31,26,23,.06)}
.dpa-card a.dpa-more{display:inline-block;margin-top:1rem;font-weight:600;color:#B14E26}
.dpa-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#B14E26;background:#FBEDE6;border-radius:999px;padding:.3rem .7rem}
.dpa-facts{width:100%;border-collapse:collapse;margin-top:1.25rem;font-size:.98rem}
.dpa-facts th,.dpa-facts td{text-align:left;vertical-align:top;padding:.8rem .75rem;border-top:1px solid #ECE4DA}
.dpa-facts th{width:38%;color:#1F1A17;font-weight:600;background:#FAF6F1}
.dpa-facts td{color:#3A322D}
.dpa-facts a,.dpa-p a,.dpa-list a,.dpa-small a,.dpa-note a{color:#B14E26;text-decoration:underline;text-underline-offset:2px}
.dpa-note{margin-top:1.5rem;border-left:4px solid #B14E26;background:#FBEDE6;border-radius:.75rem;padding:1rem 1.1rem;color:#2B2420;font-size:.98rem;line-height:1.65}
.dpa-warn{border-left-color:#b45309;background:#fffbeb}
.dpa-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#B14E26;color:#fff;font-weight:600;border-radius:1rem;padding:.9rem 1.4rem;text-decoration:none;box-shadow:0 10px 28px rgba(177,78,38,.28)}
.dpa-btn:hover{background:#923F1D}
.dpa-btn.ghost{background:#fff;color:#B14E26;border:2px solid #F1D3C5;box-shadow:none}
.dpa-btns{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}
@media(min-width:640px){.dpa-btns{flex-direction:row;flex-wrap:wrap}}
.dpa-form{display:grid;gap:1rem;margin-top:1.25rem}
.dpa-form .two{display:grid;gap:1rem}
@media(min-width:640px){.dpa-form .two{grid-template-columns:1fr 1fr}}
.dpa-form label.f{display:block;font-weight:600;color:#1F1A17;font-size:.95rem}
.dpa-form input[type=text],.dpa-form input[type=email],.dpa-form input[type=tel],.dpa-form input[type=number],.dpa-form select{width:100%;margin-top:.35rem;padding:.8rem .95rem;border:1px solid #DCD1C6;border-radius:.9rem;background:#fff;color:#1F1A17;font-size:1rem}
.dpa-form input:focus,.dpa-form select:focus{outline:none;border-color:#E2895A;box-shadow:0 0 0 3px rgba(177,78,38,.2)}
.dpa-form .hint{font-weight:400;color:#6B615A;font-size:.85rem}
.dpa-consent{display:flex;gap:.65rem;align-items:flex-start;font-size:.85rem;color:#4F4640;line-height:1.55}
.dpa-consent input{margin-top:.25rem;width:1rem;height:1rem;accent-color:#B14E26;flex-shrink:0}
.dpa-submit{width:100%;background:#B14E26;color:#fff;font-weight:600;border:0;border-radius:1rem;padding:1rem;font-size:1.05rem;cursor:pointer}
.dpa-submit:hover{background:#923F1D}
.dpa-result{margin-top:1.25rem;border-radius:1rem;padding:1.1rem 1.2rem;font-size:1rem;line-height:1.65;display:none}
.dpa-result.show{display:block}
.dpa-result.ok{background:#f0fdf4;border:1px solid #bbf7d0;color:#14532d}
.dpa-result.maybe{background:#fffbeb;border:1px solid #fde68a;color:#78350f}
.dpa-result.no{background:#FAF6F1;border:1px solid #ECE4DA;color:#3A322D}
.dpa-result ul{list-style:disc;padding-left:1.2rem;margin-top:.5rem}
.dpa-out{display:grid;gap:.75rem;margin-top:1.25rem}
@media(min-width:640px){.dpa-out{grid-template-columns:repeat(2,1fr)}}
.dpa-stat{background:#fff;border:1px solid #ECE4DA;border-radius:1rem;padding:1rem}
.dpa-stat .k{font-size:.8rem;color:#6B615A;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.dpa-stat .v{font-size:1.6rem;font-weight:800;color:#1F1A17;margin-top:.25rem}
.dpa-stat.hi{background:#FBEDE6;border-color:#F1D3C5}
.dpa-stat.hi .v{color:#B14E26}
.dpa-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
.dpa-presets button{border:1px solid #F1D3C5;background:#fff;color:#B14E26;border-radius:999px;padding:.45rem .9rem;font-weight:600;font-size:.88rem;cursor:pointer}
.dpa-presets button[aria-pressed=true]{background:#B14E26;color:#fff;border-color:#B14E26}
.dpa-disclaimer{background:#F5EFE8;border-top:1px solid #ECE4DA}
.dpa-disclaimer p{font-size:.85rem;color:#4F4640;line-height:1.65;margin-top:.75rem}
.dpa-disclaimer a{color:#B14E26;text-decoration:underline}
.dpa-crumb{max-width:64rem;margin:0 auto;padding:1.25rem 1.25rem 0;font-size:.875rem;color:#6B615A}
.dpa-crumb a:hover{color:#B14E26}
.dpa-toc{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.dpa-toc a{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:.45rem .9rem;font-size:.9rem;font-weight:600;text-decoration:none}
fieldset.dpa-q{border:0;padding:0;margin:0}
fieldset.dpa-q legend{font-weight:600;color:#1F1A17;font-size:.95rem}
.dpa-radio{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.45rem}
.dpa-radio label{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #DCD1C6;border-radius:.8rem;padding:.55rem .85rem;background:#fff;cursor:pointer;font-size:.95rem}
.dpa-radio input{accent-color:#B14E26}
/* Rate request modal. Bottom sheet on mobile, centered dialog on desktop. */
.dpa-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center}
.dpa-modal[hidden]{display:none}
.dpa-modal-backdrop{position:absolute;inset:0;background:rgba(31,26,23,.6)}
.dpa-modal-panel{position:relative;width:100%;max-height:92vh;overflow-y:auto;background:#fff;border-radius:1.25rem 1.25rem 0 0;padding:1.5rem 1.25rem calc(1.5rem + env(safe-area-inset-bottom));box-shadow:0 -12px 40px rgba(31,26,23,.25);animation:dpaUp .22s ease-out}
@media(min-width:640px){.dpa-modal{align-items:center}.dpa-modal-panel{max-width:28rem;border-radius:1.25rem;padding:1.75rem;animation:dpaFade .18s ease-out}}
.dpa-modal-title{font-size:1.4rem;font-weight:800;color:#1F1A17;padding-right:2.5rem;outline:none}
.dpa-modal-x{position:absolute;top:.75rem;right:.75rem;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid #ECE4DA;background:#fff;color:#3A322D;font-size:1.5rem;line-height:1;cursor:pointer}
.dpa-modal-x:hover{background:#F5EFE8}
.dpa-modal-x:focus-visible,.dpa-submit:focus-visible{outline:3px solid #E9B49A;outline-offset:2px}
.dpa-modal-panel .dpa-form{gap:.75rem}
body.dpa-modal-open{overflow:hidden}
@keyframes dpaUp{from{transform:translateY(100%)}to{transform:none}}
@keyframes dpaFade{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.dpa-modal-panel{animation:none}}
.dpa-note a.dpa-btn,.dpa-p a.dpa-btn{color:#fff;text-decoration:none}
.dpa-note a.dpa-btn.ghost,.dpa-p a.dpa-btn.ghost{color:#B14E26}
