/* Publication fixes. Keep the original blue visual language. */
.hero #heroTitle{max-width:100%;width:100%;font-size:clamp(2rem,6.6vw,6.5rem);line-height:1.14;overflow:visible;overflow-wrap:normal;word-break:normal;letter-spacing:-.025em;text-wrap:balance}
.hero #heroTitle .hero-line{display:block}
.hero #heroTitle em{display:inline-block;padding-right:.08em}
@media(max-width:600px){.hero #heroTitle{font-size:clamp(1.8rem,8.4vw,3.15rem);line-height:1.18}.hero #heroTitle .hero-line{display:inline}.hero #heroTitle .hero-line::after{content:' '}}
/* Text is visible even when animation CDNs are blocked. */
[data-reveal]{opacity:1;transform:none}
.modal-card{overscroll-behavior:contain}
.modal-card label{cursor:pointer}
.modal-card .form-note{line-height:1.6}
.modal-card .form-note a{text-decoration:underline;color:var(--cream)}
.modal-card .consent{display:flex;align-items:flex-start;gap:.65rem;font-size:.83rem;color:var(--cream);margin:1rem 0}
.modal-card .consent input{width:1.1rem;height:1.1rem;flex:0 0 auto;margin-top:.2rem;accent-color:var(--clay)}
.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-msg.err{display:block;color:#ffb2ab}
.form-submit:disabled{opacity:.65;cursor:wait}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.hdr-logo{flex-shrink:0}
.hdr-logo img{object-fit:contain}
.crumb{flex-wrap:wrap}
.grid-2>*{min-width:0}
.phero h1{max-width:22ch;line-height:1.15;overflow-wrap:normal;text-wrap:balance}
.service-nav{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.75rem}
.service-nav a{padding:.6rem 1rem;border:1px solid var(--line);border-radius:2px;font-size:.85rem}
.service-nav a:hover,.service-nav a[aria-current=page]{background:var(--char);color:var(--gold)}
.faq{max-width:820px;margin:2rem auto 0}
.faq details{border-bottom:1px solid var(--line);padding:1.3rem 0}
.faq summary{cursor:pointer;font-size:1.08rem;color:var(--cream)}
.faq details p{margin-top:1rem}
.service-form-section{background:var(--char)}
.service-form-section .modal-card{max-height:none;overflow:visible;animation:none;max-width:none;padding:0;border:0}
.service-form-section .form-msg{margin-top:1rem}
.field{margin-bottom:1rem}.field.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field label{display:block;font-size:.8rem;color:var(--cream);margin-bottom:.4rem}
.field input,.field select,.field textarea{width:100%;min-height:48px;background:var(--ink);border:1px solid var(--line);border-radius:3px;color:var(--cream);font:inherit;padding:.75rem .85rem}
.field textarea{min-height:110px;resize:vertical}.field option{background:var(--ink)}
.form-submit{width:100%;justify-content:center}.form-note{font-size:.78rem;color:var(--muted);margin-top:1rem}
@media(max-width:1100px){.hdr-nav{gap:1rem}.hdr-phone{display:none}}
@media(max-width:600px){.hdr-in{gap:1rem}.hdr-cta .btn{padding:.75rem .9rem;font-size:.68rem}.phero h1{font-size:clamp(2rem,8.7vw,3rem)}.field.two{grid-template-columns:1fr}.crumb{font-size:.64rem;letter-spacing:.08em}.btn{max-width:100%;white-space:normal}.checks{grid-template-columns:1fr}}
