/* INTLIFE v1.0.7: LIMITED FIXES ONLY. No changes to the working scroll/animation system. */
html:has(body.intlife-standalone-page) { margin-top:0!important; padding-top:0!important; }
body.intlife-standalone-page { margin:0!important; padding:0!important; }
body.intlife-standalone-page #wpadminbar { display:none!important; }
body.intlife-standalone-page .intlife-root { margin-top:0!important; padding-top:0!important; }
body.intlife-standalone-page .intlife-root > main#top,
body.intlife-standalone-page .intlife-root > main#top > section.hero {
  margin-top:0!important; padding-top:0!important; top:0!important;
}
/* The generic .site-header selector conflicts with WordPress theme CSS. */
body.intlife-standalone-page .intlife-root > header#siteHeader {
  position:fixed!important; top:24px!important; left:50%!important;
  right:auto!important; margin:0!important; transform:translateX(-50%)!important;
  width:min(1200px,calc(100vw - 48px))!important;
  box-sizing:border-box!important; display:flex!important;
  align-items:center!important; justify-content:space-between!important;
}
body.intlife-standalone-page .intlife-root > header#siteHeader.scrolled {top:12px!important;}
/* Everyday Comfort: improve tab legibility without touching the mockup/scroll scene. */
body.intlife-standalone-page .intlife-root .interactive-tabs {
  display:flex; gap:5px; padding:6px; border:1px solid rgba(255,255,255,.22);
  border-radius:999px; background:rgba(31,15,45,.8);
  box-shadow:0 10px 35px rgba(14,5,24,.24);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
}
body.intlife-standalone-page .intlife-root .interactive-tab {
  min-height:45px; border-radius:999px; display:inline-flex;
  align-items:center; justify-content:center; gap:8px;
  padding:11px 18px; font-size:14px; font-weight:600;
  line-height:1.2; color:#fff; border:1px solid transparent;
  background:transparent; white-space:nowrap; transition:background .2s,border-color .2s;
}
body.intlife-standalone-page .intlife-root .interactive-tab img {width:20px;height:20px;flex:none;object-fit:contain;}
body.intlife-standalone-page .intlife-root .interactive-tab:hover:not(.active) {background:rgba(255,255,255,.12);}
body.intlife-standalone-page .intlife-root .interactive-tab.active {
  background:#df0785; border-color:rgba(255,255,255,.35);
  box-shadow:0 4px 15px rgba(223,7,133,.25);
}
@media(max-width:800px) {
  body.intlife-standalone-page .intlife-root > header#siteHeader{top:14px!important;width:calc(100vw - 32px)!important;}
  body.intlife-standalone-page .intlife-root > header#siteHeader.scrolled{top:8px!important;}
  body.intlife-standalone-page .intlife-root .interactive-tabs {
    display:grid; grid-template-columns:1.15fr 1fr 1fr;
    left:50%;right:auto;transform:translateX(-50%);
    width:calc(100vw - 32px);max-width:366px;bottom:40px;
    gap:4px;padding:5px;
  }
  body.intlife-standalone-page .intlife-root .interactive-tab {
    min-width:0;width:100%;font-size:11px;min-height:43px;
    padding:8px 4px;gap:4px;
  }
  body.intlife-standalone-page .intlife-root .interactive-tab img {width:16px;height:16px;}
}
@media(max-width:360px){
  body.intlife-standalone-page .intlife-root .interactive-tab {font-size:10px;padding:7px 2px;gap:2px;}
}


/* INTLIFE v1.0.8: scoped CTA and header polish; preserve v1.0.7 scroll animation. */
/* Client theme may reset form submit to outlined button; lock approved pink pill here. */
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit {
  box-sizing:border-box!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  width:100%!important;
  max-width:100%!important;
  min-height:56px!important;
  margin:20px 0 0!important;
  padding:14px 24px!important;
  align-items:center!important;
  justify-content:center!important;
  background:#e90288!important;
  background-image:none!important;
  color:#fff!important;
  border:1px solid #e90288!important;
  border-radius:999px!important;
  box-shadow:none!important;
  font-family:'Poppins',Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  opacity:1;
  cursor:pointer;
  transition:background-color .2s,box-shadow .2s,transform .2s;
}
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:hover,
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:focus-visible {
  background:#ce0278!important;
  border-color:#ce0278!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(233,2,136,.22)!important;
}
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:disabled {
  opacity:.65!important;
  cursor:wait!important;
  transform:none!important;
}
/* More breathing room on both ends of the floating menu, with a centered position. */
body.intlife-landing-active .intlife-root > header#siteHeader {
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  width:min(1160px,calc(100vw - 72px))!important;
  padding-inline:clamp(24px,2.7vw,38px)!important;
}
@media (min-width:801px) and (max-width:1050px) {
  body.intlife-landing-active .intlife-root > header#siteHeader {
    width:calc(100vw - 44px)!important;
    padding-inline:23px!important;
  }
  body.intlife-landing-active .intlife-root #mainNav {gap:20px!important;}
  body.intlife-landing-active .intlife-root #mainNav > a:not(.btn) {font-size:14px!important;}
  body.intlife-landing-active .intlife-root #mainNav > .nav-cta {font-size:14px!important;padding-inline:16px!important;}
}
@media (max-width:800px) {
  body.intlife-landing-active .intlife-root > header#siteHeader {
    width:calc(100vw - 40px)!important;
    padding-inline:20px!important;
  }
}
@media (max-width:480px) {
  body.intlife-landing-active .intlife-root > header#siteHeader {
    width:calc(100vw - 36px)!important;
    padding-inline:18px!important;
  }
}
/* Prevent large CTA labels from forcing horizontal overflow on narrow viewports. */
body.intlife-landing-active .intlife-root .btn,
body.intlife-landing-active .intlife-root .whatsapp-link {
  max-width:100%;
  box-sizing:border-box;
}
@media (max-width:600px) {
  body.intlife-landing-active .intlife-root .hero-actions {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%;
  }
  body.intlife-landing-active .intlife-root .hero-actions .btn,
  body.intlife-landing-active .intlife-root .case-card > .btn,
  body.intlife-landing-active .intlife-root .final-cta > .btn,
  body.intlife-landing-active .intlife-root form#projectForm button[type="submit"],
  body.intlife-landing-active .intlife-root form#projectForm .whatsapp-link,
  body.intlife-landing-active .intlife-root #mainNav.open > .nav-cta {
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:52px;
    text-align:center!important;
    justify-content:center!important;
    align-items:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
    gap:9px;
  }
  body.intlife-landing-active .intlife-root .hero-actions .btn,
  body.intlife-landing-active .intlife-root .case-card > .btn,
  body.intlife-landing-active .intlife-root .final-cta > .btn {
    padding:13px 19px!important;
    font-size:14px!important;
    line-height:1.45!important;
  }
  body.intlife-landing-active .intlife-root .hero-actions .btn img,
  body.intlife-landing-active .intlife-root .case-card > .btn img,
  body.intlife-landing-active .intlife-root .final-cta > .btn img {width:17px;height:17px;flex-shrink:0;}
  body.intlife-landing-active .intlife-root .tracking-banner-actions {
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    width:100%;
  }
  body.intlife-landing-active .intlife-root .tracking-banner-actions button {width:100%;min-height:44px;}
  /* Labels are short enough: keep the three interactive tabs in one responsive row. */
  body.intlife-landing-active .intlife-root .interactive-tabs {
    max-width:min(366px,calc(100vw - 32px))!important;
  }
}
@media (max-width:360px) {
  body.intlife-landing-active .intlife-root .hero-actions .btn,
  body.intlife-landing-active .intlife-root .case-card > .btn,
  body.intlife-landing-active .intlife-root .final-cta > .btn {font-size:13px!important;padding-inline:14px!important;}
}

/* v1.0.10: Consistent button states for INTLIFE ONLY.
   WordPress/Elementor theme :hover styles must not override readability.
   Preserve all positioning, animations and responsive behavior from v1.0.9. */

/* Main filled CTA (header, hero, case study, final CTA, form submission).
   Default is INTLIFE pink; hover uses a darker pink with white lettering. */
body.intlife-landing-active .intlife-root a.btn.btn-primary,
body.intlife-landing-active .intlife-root a.btn.btn-primary:link,
body.intlife-landing-active .intlife-root a.btn.btn-primary:visited,
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit {
  background-color:#e90288!important;
  background-image:none!important;
  border-color:#e90288!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-decoration:none!important;
}
body.intlife-landing-active .intlife-root a.btn.btn-primary:hover,
body.intlife-landing-active .intlife-root a.btn.btn-primary:focus,
body.intlife-landing-active .intlife-root a.btn.btn-primary:focus-visible,
body.intlife-landing-active .intlife-root a.btn.btn-primary:active,
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:hover,
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:focus-visible,
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit:active {
  background-color:#ba006d!important;
  background-image:none!important;
  border-color:#ba006d!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  box-shadow:0 9px 22px rgba(186,0,109,.26)!important;
  text-decoration:none!important;
}
/* Protect nested spans and icons from theme-global link hover inheritance. */
body.intlife-landing-active .intlife-root .btn.btn-primary *,
body.intlife-landing-active .intlife-root .btn.btn-primary:hover *,
body.intlife-landing-active .intlife-root .btn.btn-primary:focus-visible * {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Outline CTA on dark hero: never become transparent with dark text. */
body.intlife-landing-active .intlife-root a.btn.btn-outline,
body.intlife-landing-active .intlife-root a.btn.btn-outline:link,
body.intlife-landing-active .intlife-root a.btn.btn-outline:visited {
  background-color:rgba(19,8,27,.32)!important;
  border:1px solid rgba(255,255,255,.83)!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-decoration:none!important;
}
body.intlife-landing-active .intlife-root a.btn.btn-outline:hover,
body.intlife-landing-active .intlife-root a.btn.btn-outline:focus,
body.intlife-landing-active .intlife-root a.btn.btn-outline:focus-visible,
body.intlife-landing-active .intlife-root a.btn.btn-outline:active {
  background-color:#a90065!important;
  border-color:#f6c7e5!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-decoration:none!important;
  box-shadow:0 9px 22px rgba(32,7,42,.22)!important;
}
body.intlife-landing-active .intlife-root .btn.btn-outline *,
body.intlife-landing-active .intlife-root .btn.btn-outline:hover *,
body.intlife-landing-active .intlife-root .btn.btn-outline:focus-visible * {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Any orange/accent button variants added later also retain accessible
   white text on their darker hover state. Only affects the INTLIFE root. */
body.intlife-landing-active .intlife-root :is(a,button).btn-orange:hover,
body.intlife-landing-active .intlife-root :is(a,button).btn-orange:focus-visible,
body.intlife-landing-active .intlife-root :is(a,button).btn-accent:hover,
body.intlife-landing-active .intlife-root :is(a,button).btn-accent:focus-visible {
  background-color:#a74400!important;
  border-color:#a74400!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* WhatsApp stays light mint + dark green, never dark lettering on dark green. */
body.intlife-landing-active .intlife-root a.whatsapp-link,
body.intlife-landing-active .intlife-root a.whatsapp-link:link,
body.intlife-landing-active .intlife-root a.whatsapp-link:visited {
  background-color:#e6ffda!important;
  border-color:#a5dda2!important;
  color:#176b3e!important;
  -webkit-text-fill-color:#176b3e!important;
}
body.intlife-landing-active .intlife-root a.whatsapp-link:hover,
body.intlife-landing-active .intlife-root a.whatsapp-link:focus-visible,
body.intlife-landing-active .intlife-root a.whatsapp-link:active {
  background-color:#c7efb7!important;
  border-color:#6aa977!important;
  color:#10562f!important;
  -webkit-text-fill-color:#10562f!important;
}
body.intlife-landing-active .intlife-root a.whatsapp-link svg,
body.intlife-landing-active .intlife-root a.whatsapp-link:hover svg {
  color:inherit!important;
  stroke:currentColor!important;
}

/* Interactive mode tabs retain white labels regardless of WP theme styles. */
body.intlife-landing-active .intlife-root button.interactive-tab,
body.intlife-landing-active .intlife-root button.interactive-tab:hover,
body.intlife-landing-active .intlife-root button.interactive-tab:focus-visible,
body.intlife-landing-active .intlife-root button.interactive-tab.active {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
body.intlife-landing-active .intlife-root button.interactive-tab.active,
body.intlife-landing-active .intlife-root button.interactive-tab.active:hover {
  background-color:#cf087c!important;
  border-color:rgba(255,255,255,.3)!important;
}
body.intlife-landing-active .intlife-root button.interactive-tab:not(.active):hover,
body.intlife-landing-active .intlife-root button.interactive-tab:not(.active):focus-visible {
  background-color:rgba(255,255,255,.19)!important;
  border-color:rgba(255,255,255,.18)!important;
}

/* Consent buttons: one clear filled CTA and a light outlined action. */
body.intlife-landing-active .intlife-root button.tracking-allow {
  background:#e90288!important; border-color:#e90288!important;
  color:#ffffff!important; -webkit-text-fill-color:#ffffff!important;
}
body.intlife-landing-active .intlife-root button.tracking-allow:hover,
body.intlife-landing-active .intlife-root button.tracking-allow:focus-visible {
  background:#ba006d!important; border-color:#ba006d!important;
  color:#ffffff!important; -webkit-text-fill-color:#ffffff!important;
}
body.intlife-landing-active .intlife-root button.tracking-reject {
  background:#ffffff!important; border-color:#b8a4c0!important;
  color:#281630!important; -webkit-text-fill-color:#281630!important;
}
body.intlife-landing-active .intlife-root button.tracking-reject:hover,
body.intlife-landing-active .intlife-root button.tracking-reject:focus-visible {
  background:#f3edf5!important; border-color:#85678f!important;
  color:#281630!important; -webkit-text-fill-color:#281630!important;
}

/* Header mobile control and tracking-preference text. */
body.intlife-landing-active .intlife-root button.menu-toggle:hover,
body.intlife-landing-active .intlife-root button.menu-toggle:focus-visible {
  background:rgba(255,255,255,.13)!important;
  color:#ffffff!important;
}
body.intlife-landing-active .intlife-root button.menu-toggle span {
  background-color:#ffffff!important;
}
body.intlife-landing-active .intlife-root button.privacy-settings:hover,
body.intlife-landing-active .intlife-root button.privacy-settings:focus-visible {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Keyboard accessibility: visible focus ring but no hover-only dark text. */
body.intlife-landing-active .intlife-root :is(a.btn,button.btn,a.whatsapp-link,button.interactive-tab,button.tracking-allow,button.tracking-reject):focus-visible {
  outline:3px solid #ffb7e0!important;
  outline-offset:3px!important;
}

/* INTLIFE v1.0.11 — responsive header only.
   Prevent WordPress/theme flex-direction and navigation wrapping at intermediate widths.
   Keep sticky header centered, all animation/section CSS untouched. */
body.intlife-landing-active .intlife-root > header#siteHeader {
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  box-sizing:border-box!important;
  gap:18px!important;
  min-width:0!important;
  max-width:calc(100vw - 32px)!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
body.intlife-landing-active .intlife-root > header#siteHeader > a.header-brand {
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  min-width:0!important;
}
body.intlife-landing-active .intlife-root > header#siteHeader > a.header-brand img {
  display:block!important;
  flex:0 0 auto!important;
  width:129px!important;
  max-width:129px!important;
  height:auto!important;
  max-height:33px!important;
  object-fit:contain!important;
}
@media(min-width:1181px) {
  body.intlife-landing-active .intlife-root #mainNav {
    display:flex!important;
    position:static!important;
    flex:0 0 auto!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    gap:clamp(15px,2.5vw,42px)!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body.intlife-landing-active .intlife-root #mainNav > a {
    white-space:nowrap!important;
    flex-shrink:0!important;
  }
  body.intlife-landing-active .intlife-root #mainNav .nav-cta {
    min-height:46px!important;
    padding-inline:clamp(16px,1.65vw,23px)!important;
    font-size:clamp(13px,1vw,16px)!important;
    line-height:1.2!important;
  }
  body.intlife-landing-active .intlife-root #menuToggle {display:none!important;}
}
/* Switch to an intentional compact navigation BEFORE the desktop items wrap. */
@media(max-width:1180px) {
  body.intlife-landing-active .intlife-root > header#siteHeader,
  body.intlife-standalone-page .intlife-root > header#siteHeader {
    width:calc(100vw - 40px)!important;
    max-width:calc(100vw - 40px)!important;
    min-height:66px!important;
    top:16px!important;
    padding:10px clamp(17px,3vw,26px)!important;
    border-radius:40px!important;
  }
  body.intlife-landing-active .intlife-root > header#siteHeader.scrolled,
  body.intlife-standalone-page .intlife-root > header#siteHeader.scrolled {top:8px!important;}
  body.intlife-landing-active .intlife-root #menuToggle {
    display:inline-flex!important;
    flex:0 0 44px!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    padding:7px!important;
    border:1px solid rgba(255,255,255,.24)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    box-shadow:none!important;
    margin:0!important;
  }
  body.intlife-landing-active .intlife-root #menuToggle span {
    background:#fff!important;
    display:block!important;
    width:22px!important;
    height:2px!important;
    min-height:2px!important;
    margin:2.5px 0!important;
    padding:0!important;
    border:0!important;
  }
  body.intlife-landing-active .intlife-root #mainNav {
    display:none!important;
    position:absolute!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:15px!important;
    margin:0!important;
    gap:4px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:22px!important;
    background:rgba(43,22,58,.97)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
    box-shadow:0 18px 32px rgba(14,3,22,.32)!important;
  }
  body.intlife-landing-active .intlife-root #mainNav.open{display:flex!important;}
  body.intlife-landing-active .intlife-root #mainNav > a:not(.btn) {
    display:block!important;
    width:100%!important;
    white-space:normal!important;
    padding:13px 14px!important;
    font-size:15px!important;
    line-height:1.4!important;
    border-radius:12px!important;
  }
  body.intlife-landing-active .intlife-root #mainNav > a:not(.btn):hover,
  body.intlife-landing-active .intlife-root #mainNav > a:not(.btn):focus-visible {
    color:#fff!important;
    background:rgba(255,255,255,.12)!important;
  }
  body.intlife-landing-active .intlife-root #mainNav > .nav-cta {
    display:flex!important;
    width:100%!important;
    margin-top:8px!important;
    min-height:50px!important;
    font-size:15px!important;
    justify-content:center!important;
  }
}
@media(max-width:480px) {
  body.intlife-landing-active .intlife-root > header#siteHeader,
  body.intlife-standalone-page .intlife-root > header#siteHeader {
    width:calc(100vw - 30px)!important;
    max-width:calc(100vw - 30px)!important;
    min-height:58px!important;
    padding:7px 13px!important;
    border-radius:30px!important;
  }
  body.intlife-landing-active .intlife-root > header#siteHeader > a.header-brand img {
    width:112px!important;
    max-width:112px!important;
  }
  body.intlife-landing-active .intlife-root #menuToggle {
    flex-basis:40px!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }
}


/* v1.0.12 — Scoped inline validation; no layout or animation changes. */
body.intlife-landing-active .intlife-root .enquiry-form .field-error {
  display:block; color:#b42343; font-size:12px; line-height:1.5; font-weight:500;
  margin:3px 0 0; padding:0; overflow-wrap:anywhere;
}
body.intlife-landing-active .intlife-root .enquiry-form .field-error:empty {display:none;}
body.intlife-landing-active .intlife-root .enquiry-form input[aria-invalid="true"],
body.intlife-landing-active .intlife-root .enquiry-form select[aria-invalid="true"],
body.intlife-landing-active .intlife-root .enquiry-form textarea[aria-invalid="true"],
body.intlife-landing-active .intlife-root .enquiry-form .phone-field.is-invalid {
  border-color:#c83758!important;box-shadow:0 0 0 1px rgba(200,55,88,.12);
}
body.intlife-landing-active .intlife-root .enquiry-form .phone-field.is-invalid input {
  border:0!important;box-shadow:none!important;
}
body.intlife-landing-active .intlife-root .enquiry-form #enquiryConsentError {margin:6px 0 0;}


/* v1.0.13 — Form field visual alignment only.
   Reset Elementor/WordPress email input overrides and keep the focused/error
   states consistent with existing INTLIFE inputs. No validation JS changes. */
body.intlife-landing-active .intlife-root form#projectForm .field > input#workEmail {
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  height:49px!important;
  min-height:49px!important;
  max-height:none!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid #dcd3df!important;
  border-radius:8px!important;
  outline:none!important;
  background:#faf8fb!important;
  background-image:none!important;
  color:#281630!important;
  font:400 14px/1.5 'Poppins',Arial,sans-serif!important;
  box-shadow:none!important;
  -webkit-box-shadow:none!important;
  transition:border-color .2s ease,box-shadow .2s ease;
}
body.intlife-landing-active .intlife-root form#projectForm .field > input#workEmail::placeholder {
  color:#948999!important;
  opacity:1!important;
}
body.intlife-landing-active .intlife-root form#projectForm .field > input#workEmail:focus {
  border-color:#e90288!important;
  box-shadow:0 0 0 2px rgba(233,2,136,.13)!important;
  -webkit-box-shadow:0 0 0 2px rgba(233,2,136,.13)!important;
}
body.intlife-landing-active .intlife-root form#projectForm .field > input#workEmail[aria-invalid="true"] {
  border-color:#c83758!important;
  box-shadow:0 0 0 1px rgba(200,55,88,.12)!important;
  -webkit-box-shadow:0 0 0 1px rgba(200,55,88,.12)!important;
}
/* Country selector: content-sized instead of the old 114px minimum, with
   equal short gaps between flag, dial code and chevron. The select remains
   an invisible full-surface native control for accessible country selection. */
body.intlife-landing-active .intlife-root form#projectForm .phone-field > .phone-country-control {
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  gap:5px!important;
  margin:0!important;
  padding:0 9px 0 10px!important;
}
body.intlife-landing-active .intlife-root form#projectForm .phone-country-control > img,
body.intlife-landing-active .intlife-root form#projectForm .phone-country-control > .phone-flag-fallback {
  flex:0 0 23px!important;
  width:23px!important;
  height:16px!important;
  margin:0!important;
}
body.intlife-landing-active .intlife-root form#projectForm .phone-country-control > .phone-dial {
  flex:0 0 auto!important;
  margin:0!important;
  white-space:nowrap!important;
}
body.intlife-landing-active .intlife-root form#projectForm .phone-country-control > svg {
  flex:0 0 12px!important;
  width:12px!important;
  height:12px!important;
  margin:0!important;
}


/* v1.0.17/18 — Keep the visible final CTA-to-footer gap near 50px.
   v1.0.18 removes the top footer divider entirely.
   All rules are intentionally scoped to this landing only. */
body.intlife-landing-active .intlife-root > section.final-cta {
  margin-bottom:38px!important;
}
body.intlife-landing-active .intlife-root > footer.site-footer {
  padding-top:12px!important;
}
@media(max-width:800px) {
  body.intlife-landing-active .intlife-root > section.final-cta {
    margin-bottom:38px!important;
  }
  body.intlife-landing-active .intlife-root > footer.site-footer {
    padding-top:12px!important;
  }
}
@media(max-width:480px) {
  body.intlife-landing-active .intlife-root > section.final-cta {
    margin-bottom:38px!important;
  }
  body.intlife-landing-active .intlife-root > footer.site-footer {
    padding-top:12px!important;
  }
}
/* v1.0.17 CTA font-weight: SemiBold 600, including tabs/consent;
   tracking preference remains a normal-weight text link. */
body.intlife-landing-active .intlife-root :is(a.btn, button.btn, a.whatsapp-link),
body.intlife-landing-active .intlife-root form#projectForm button[type="submit"].btn.btn-primary.submit {
  font-family:'Poppins',Arial,sans-serif!important;
  font-weight:600!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
body.intlife-landing-active .intlife-root :is(button.interactive-tab, button.tracking-allow, button.tracking-reject) {
  font-family:'Poppins',Arial,sans-serif!important;
  font-weight:600!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
body.intlife-landing-active .intlife-root button.privacy-settings,
body.intlife-landing-active .intlife-root button.privacy-settings:hover,
body.intlife-landing-active .intlife-root button.privacy-settings:focus-visible,
body.intlife-landing-active .intlife-root button.privacy-settings:active {
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0 0 0 12px!important;
  background:none!important;
  background-color:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  font:400 14px/1.5 'Poppins',Arial,sans-serif!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:#bca9c5!important;
  -webkit-text-fill-color:#bca9c5!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
  cursor:pointer!important;
  vertical-align:baseline!important;
}
body.intlife-landing-active .intlife-root button.privacy-settings:hover,
body.intlife-landing-active .intlife-root button.privacy-settings:focus-visible {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-decoration-thickness:1px!important;
}
body.intlife-landing-active .intlife-root button.privacy-settings:focus-visible {
  outline:2px solid #ffb7e0!important;
  outline-offset:4px!important;
}
@media(max-width:600px) {
  body.intlife-landing-active .intlife-root button.privacy-settings {font-size:14px!important;}
}
