:root {

  --sg-font: 'Manrope', 'Noto Sans Devanagari', sans-serif;
  --sg-motion: 200ms;
  --sg-target: 2.75rem;
}
body { margin: 0; font-family: var(--sg-font); --sg-focus: var(--e-global-color-secondary); }
html { scroll-behavior: smooth; scroll-padding-top: 7rem; }
html[lang^='hi'] { --sg-font: 'Noto Sans Devanagari', 'Manrope', sans-serif; }
html[lang^='hi'] .elementor { font-family: var(--sg-font); }
html[lang^='hi'] .elementor-heading-title,
html[lang^='hi'] .elementor-button,
html[lang^='hi'] .elementor-icon-box-title,
html[lang^='hi'] .elementor-icon-box-description,
html[lang^='hi'] .elementor-widget-text-editor,
html[lang^='hi'] .hfe-menu-item { font-family: var(--sg-font); }
a, button, input, textarea, select { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid var(--sg-focus); outline-offset: 4px;
}
#masthead { position: sticky; top: 0; z-index: 50; }
body.admin-bar #masthead { top: 32px; }
.sg-header .elementor-icon-box-wrapper { align-items: center; }
.sg-header .elementor-icon-box-title { margin: 0; }
.sg-header .elementor-icon-box-description { margin-top: .25rem; }
.sg-hero-copy .elementor-heading-title span { color: var(--e-global-color-accent); }
.sg-photo img { display: block; }
.sg-button .elementor-button { transition: background-color var(--sg-motion), color var(--sg-motion); min-height: var(--sg-target); }
.sg-project-card { transition: box-shadow var(--sg-motion); }
.sg-project-card:hover { box-shadow: 0 8px 24px rgb(10 28 52 / 8%); }
.sg-footer-contact a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.sg-footer-links a { min-height: var(--sg-target); display: inline-flex; align-items: center; }
.sg-enquiry-form .mf-input { min-height: var(--sg-target); font-family: var(--sg-font); }
.sg-enquiry-form .mf-input-label { color: var(--e-global-color-primary); font-family: var(--sg-font); }
.sg-enquiry-form .mf-input-wrapper { margin-bottom: 0; }
.sg-enquiry-form .mf-input { border-radius: 0; }
.sg-enquiry-form .mf-btn { min-height: var(--sg-target); font-family: var(--sg-font); }
.sg-enquiry-form .mf-error-message { color: #9c2424; }
@media (max-width: 1024px) {
  .sg-header > .e-con:nth-child(1) { width: auto; flex-grow: 1; }
  .sg-header > .e-con:nth-child(2) { width: auto; order: 3; }
  .sg-header > .e-con:nth-child(3) { width: auto; }
  .sg-header .hfe-nav-menu__toggle { min-width: var(--sg-target); min-height: var(--sg-target); }
}
@media (max-width: 767px) {
  .sg-header .elementor-icon-box-title { font-size: 1rem; }
  .sg-header .elementor-icon { font-size: 1.75rem; }
  .sg-header .elementor-icon-box-icon { margin-right: .5rem; }
  body.admin-bar #masthead { top: 46px; }
}
.elementor .animated.animated-fast { animation-duration: var(--sg-motion); }
@media (prefers-reduced-motion: reduce) {
  .elementor .animated.animated-fast { animation-duration: 0s; }
  .elementor .elementor-invisible { visibility: visible; }
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0s; transition-duration: 0s; scroll-behavior: auto; }
}

.hfe-menu-item { min-height: var(--sg-target); }
.sg-enquiry-form .sg-consent-option label {
  display: flex;
  align-items: center;
  min-height: var(--sg-target);
  cursor: pointer;
}
.sg-enquiry-form .sg-consent-option input[type='checkbox'] {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  min-height: 0;
  flex-shrink: 0;
  margin: 0 .75rem 0 0;
  accent-color: var(--e-global-color-secondary);
}
.sg-enquiry-form .sg-consent-option input + span::before,
.sg-enquiry-form .sg-consent-option input + span::after { display: none; }
.elementor-heading-title,
.elementor-icon-box-title,
.elementor-widget-text-editor { overflow-wrap: anywhere; }
.sg-language .elementor-button,
.elementor-widget-text-editor a[href^='tel:'] {
  display: inline-flex;
  min-height: var(--sg-target);
  align-items: center;
}
