/* Public-page controls only. Original typography, colors, sections, banners,
   imagery and card styling remain owned by each existing page. */
:is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #0578ff; outline-offset:3px; }
body:has(.wrap) .cta {
  display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:8px 12px;
  border:1px solid #079b77; border-radius:8px; background:#079b77!important; color:#fff!important;
  font-size:13px; font-weight:600; line-height:1.4; letter-spacing:0; box-shadow:0 1px 3px rgb(24 56 89 / 6%);
}
body:has(.wrap) .cta:hover { background:#078364!important; }
.premium-developer :is(.btn,.back-home,.contact-btn) {
  display:inline-flex; align-items:center; justify-content:center; min-height:38px; height:auto; padding:8px 12px;
  border:1px solid #cddbef; border-radius:8px; background:#fff; color:#10213d;
  font-size:13px; font-weight:600; line-height:1.4; letter-spacing:0; text-shadow:none; box-shadow:0 1px 3px rgb(24 56 89 / 6%); transform:none;
}
.premium-developer .btn::before { content:none; }
.premium-developer :is(.btn-primary,.contact-btn) { background:#079b77; border-color:#079b77; color:#fff; }
.premium-developer :is(.btn-primary,.contact-btn):hover { background:#078364; }
@media(prefers-reduced-motion:reduce) { :is(button,input,select,textarea,.cta,.btn,.back-home,.contact-btn) { transition:none; } }
