/* Apex Accounting & Tax Advisors – supplementary styles (kept deliberately small).
   Everything visual is set in Elementor; this file only covers what native widgets cannot. */

html, body { overflow-x: hidden; }
body { -webkit-font-smoothing: antialiased; }

/* Sticky header (Header Footer Elementor renders <header class="ehf-header">) */
header.ehf-header { position: sticky; top: 0; z-index: 999; }
.apex-header { transition: box-shadow .3s ease; }
.apex-header.is-scrolled { box-shadow: 0 6px 24px rgba(16, 31, 53, .08); }
.admin-bar header.ehf-header { top: 32px; }
@media (max-width: 782px) { .admin-bar header.ehf-header { top: 46px; } }

/* Hero image: restrained gold offset frame (the only decorative device) */
.apex-hero .elementor-widget-image img,
.apex-page-hero .elementor-widget-image img { box-shadow: 14px 14px 0 -1px rgba(198, 166, 106, .85); }
@media (max-width: 767px) {
  .apex-hero .elementor-widget-image img,
  .apex-page-hero .elementor-widget-image img { box-shadow: 8px 8px 0 -1px rgba(198, 166, 106, .85); }
}

/* Service cards: subtle lift */
.elementor-widget-icon-box { transition: transform .3s ease; }
.e-con:hover > .elementor-widget-icon-box { transform: translateY(-3px); }

/* Accessible focus */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid #C6A66A; outline-offset: 3px;
}

/* Contact Form 7 / WPForms styling */
.wpcf7 label, .wpforms-container label { display: block; font: 600 14px/1.4 "Inter", sans-serif; color: #27313D; margin-bottom: 6px; }
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 input[type=tel], .wpcf7 select, .wpcf7 textarea,
.wpforms-container input[type=text], .wpforms-container input[type=email], .wpforms-container input[type=tel],
.wpforms-container select, .wpforms-container textarea {
  width: 100%; padding: 14px 16px; border: 1px solid #CBD3DE; border-radius: 2px; background: #F8F9FB;
  font: 400 16px/1.4 "Inter", sans-serif; color: #27313D; margin-bottom: 18px; box-sizing: border-box;
}
.wpcf7 input:focus, .wpcf7 select:focus, .wpcf7 textarea:focus { border-color: #24466B; background: #fff; outline: none; }
.wpcf7 input[type=submit], .wpforms-container .wpforms-submit {
  background: #C6A66A; color: #101F35; border: 0; border-radius: 2px; padding: 16px 32px;
  font: 600 15px/1 "Inter", sans-serif; cursor: pointer; transition: background .3s, color .3s;
}
.wpcf7 input[type=submit]:hover, .wpforms-container .wpforms-submit:hover { background: #24466B; color: #fff; }
.wpcf7 .two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
@media (max-width: 600px) { .wpcf7 .two-col { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
  .elementor-invisible { visibility: visible !important; }
}

/* Desktop: the header already has a Book a Consultation button, so hide the duplicate menu link (kept for the mobile menu) */
@media (min-width: 1025px) {
  .apex-header .menu-item:has(> a[href*="#enquiry"]) { display: none; }
}

/* CF7: make fields fill their column */
.wpcf7 .wpcf7-form-control-wrap { display: block; }
.wpcf7 form p { margin: 0; }
.wpcf7 .two-col > p { margin: 0; }
.wpcf7 select { appearance: auto; }

.wpcf7 .two-col { display: block; }
