/* Scoped contact treatments; the existing site design remains unchanged. */
.footer-contact{min-width:0;text-align:left;padding:0;margin:0}
.footer-contact .contact-kicker{font:700 .68rem/1.4 Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.1rem}
.footer-contact .contact-item{display:flex;align-items:center;gap:1rem;min-height:56px;text-decoration:none;margin:0 0 .85rem;border-radius:12px}
.footer-contact .contact-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:13px;background:rgba(28,53,87,.07);color:#1c3557;transition:background .2s}
.contact-icon svg,.closing-contact-actions svg{width:21px;height:21px;flex-shrink:0}
.footer-contact .contact-text{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.footer-contact .contact-label{font:400 .75rem/1.4 Arial,Helvetica,sans-serif;opacity:.75}
.footer-contact .contact-value{font:600 clamp(.9rem,1.2vw,1.05rem)/1.5 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.footer-contact .contact-item:hover .contact-icon{background:rgba(28,53,87,.14)}
.footer-contact a:focus-visible,.closing-contact-actions a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
footer.marketing-footer{grid-template-columns:150px minmax(180px,1fr) minmax(280px,1fr);column-gap:clamp(1.5rem,4vw,5rem);align-items:center}
.marketing-footer .footer-contact{justify-self:end;width:min(100%,340px)}
.marketing-footer .footer-back{grid-column:3;justify-self:end;font-size:.8rem;min-height:44px;display:inline-flex;align-items:center;margin-top:-1.5rem}
.marketing-footer>small{margin-top:-1rem}
.sj-footer{align-items:flex-start;flex-wrap:wrap}
.sj-footer .footer-contact{width:min(100%,340px)}
.trip-footer .footer-contact{width:min(100%,340px)}
.trip-footer .contact-icon{background:#e2eade}
.trip-footer .contact-item:hover .contact-icon{background:#f1f8ee}
.final-cta p.project-contact-note{font-size:.85rem;line-height:1.6;max-width:380px;margin:.85rem 0 0}
.final-cta .closing-contact{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid rgba(28,53,87,.22);max-width:380px}
.final-cta .closing-contact>p{font-size:.85rem;margin:0;line-height:1.5}
.final-cta .closing-contact-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.8rem}
.final-cta .closing-contact-actions a{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;padding:.65rem 1rem;border:1px solid rgba(28,53,87,.3);border-radius:12px;text-decoration:none;font:600 .85rem/1.4 Arial,Helvetica,sans-serif;background:rgba(241,248,238,.13);transition:background .2s}
.final-cta .closing-contact-actions a:hover{background:rgba(241,248,238,.4)}
@media(max-width:760px){
 footer.marketing-footer{grid-template-columns:1fr;gap:1.5rem;padding:2rem 1.5rem}
 .marketing-footer .footer-contact{justify-self:start;width:100%;padding-top:1.5rem;border-top:1px solid rgba(28,53,87,.15)}
 .marketing-footer .footer-back{grid-column:1;justify-self:start;margin:0}
 .marketing-footer>small{margin:0}
 .footer-contact .contact-value{font-size:1rem}
 .final-cta .closing-contact-actions{flex-direction:column;align-items:stretch;max-width:270px}
 .final-cta .closing-contact-actions a{justify-content:flex-start;min-height:50px}
 .final-cta .closing-contact,.final-cta p.project-contact-note{max-width:100%}
 .final-cta>div:first-child{position:relative;z-index:1}
 .final-cta .final-product{position:relative;right:auto;bottom:auto;justify-self:end;margin-top:2rem}
}
@media(max-width:760px){.final-cta{grid-template-columns:minmax(0,1fr)}.final-cta>div:first-child{min-width:0}}
