/*
Theme Name: Infinity Medical Concierge
Theme URI: https://infinitymedicalconcierge.com
Author: Infinity Medical Concierge
Description: One-page concierge medicine theme. Edit text, images and contact info in Appearance > Customize. Testimonials and FAQs have their own admin menus.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: infinity-concierge
*/

  html { scroll-behavior: smooth; }
  @media (min-width: 1100px) { [data-r~="timelift"] { margin: 0 0 32px !important; } }
  body { margin: 0; background: #FBFAF8; color: #10161F; font-family: Tahoma, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
  * { box-sizing: border-box; }
  a { color: #10161F; text-decoration: none; }
  a:hover { color: #1478B8; }
  input, textarea, select, button { font-family: inherit; }
  ::selection { background: #1478B8; color: #fff; }
  [data-r~="burger"] { display: none; }
  @media (max-width: 1200px) {
    [data-r~="metarow"] { flex-wrap: wrap !important; }
    [data-r~="metadiv"] { display: none !important; }
  }
  @media (max-width: 980px) { [data-r~="memgrid"] { grid-template-columns: repeat(2, minmax(0,1fr)) !important; } }
  @media (max-width: 780px) { [data-r~="memgrid"] { grid-template-columns: 1fr !important; } [data-r~="memgrid"] > div { flex: 1 1 100% !important; min-width: 0 !important; } }
  @media (max-width: 980px) {
    [data-r~="practicepic"] { border-right: 1px solid #16202D !important; border-bottom: 0 !important; height: 320px !important; min-height: 320px !important; max-height: 320px !important; align-self: stretch !important; grid-row: auto !important; }
    [data-r~="services-art"] img[aria-hidden="true"] { width: 46vw !important; opacity: .5 !important; }
    [data-r~="practicefit"] img { object-fit: cover !important; width: 100% !important; height: 100% !important; object-position: 50% 28% !important; }
  }
  @media (max-width: 980px) {
    [data-r~="nav"] { display: none !important; }
    [data-r~="burger"] { display: flex !important; }
    [data-r~="stack"] { grid-template-columns: 1fr !important; }
    [data-r~="two"] { grid-template-columns: repeat(2, 1fr) !important; }
    [data-r~="pad"] { padding-left: 22px !important; padding-right: 22px !important; }
    [data-r~="vpad"] { padding-top: 64px !important; padding-bottom: 64px !important; }
    [data-r~="gap"] { gap: 34px !important; }
    [data-r~="nogutter"] { padding-right: 0 !important; max-width: 100% !important; }
    [data-r~="hero-art"] { height: 460px !important; }
    [data-r~="services-art"] { padding-top: 64px !important; padding-bottom: 100px !important; }
    [data-r~="nowrapoff"] { white-space: normal !important; }
    [data-r~="metarow"] { flex-wrap: wrap !important; font-size: 13px !important; white-space: normal !important; }
    [data-r~="metadiv"] { display: none !important; }
    [data-r~="chips"] { flex-wrap: wrap !important; }
    [data-r~="hidemob"] { display: none !important; }
    [data-r~="herocopy"] { margin-left: 0 !important; max-width: 100% !important; padding-left: 22px !important; padding-right: 22px !important; }
    [data-r~="herocol"] { padding: 72px 0 !important; }
    [data-r~="framephoto"] { position: static !important; width: 78% !important; margin: 0 auto 26px !important; display: block !important; }
    [data-r~="ralign"] { text-align: left !important; }
    [data-r~="metarow"] { flex-direction: column !important; align-items: flex-start !important; }
    [data-r~="metarow"] > span { align-items: flex-start !important; text-align: left !important; }
    [data-r~="pquote"] { font-size: 30px !important; line-height: 1.14 !important; }
  }
  @media (max-width: 620px) {
    [data-r~="two"] { grid-template-columns: 1fr !important; }
    [data-r~="pad"] { padding-left: 18px !important; padding-right: 18px !important; }
    [data-r~="vpad"] { padding-top: 48px !important; padding-bottom: 48px !important; }
    [data-r~="hero-art"] { height: 380px !important; }
    [data-r~="pquote"] { font-size: 26px !important; }
    [data-r~="nowrapoff"] { font-size: 28px !important; }
  }
  @media (max-width: 980px) {
    [data-r~="mobright"] { margin-left: auto !important; }
    [data-r~="namecard"] { inset: 22px 22px auto auto !important; text-align: center !important; }
    [data-r~="heroslogan"] { right: 22px !important; bottom: 24px !important; }
    [data-r~="herocta"] { flex-direction: column !important; align-items: stretch !important; width: 100% !important; }
    [data-r~="herocta"] > * { width: 100% !important; text-align: center !important; }
    [data-r~="metarow"] { font-size: 16px !important; }
  }
  [data-quote-sweep="1"] span[data-ch] { animation: charSweepDark .62s ease-out both; }
  [data-quote-sweep="1"] span[data-chb] { animation: charSweepBlue .62s ease-out both; }
  [data-hero-sweep="1"] span[data-hch] { animation: heroSweepNavy .62s ease-out both; }
  [data-hero-sweep="1"] span[data-hchb] { animation: heroSweepBlue .62s ease-out both; }
  @keyframes heroSweepNavy {
    0%   { color: #FFFFFF; text-shadow: 0 0 26px rgba(255,255,255,1), 0 0 48px rgba(20,120,184,.45); }
    40%  { color: #FFFFFF; text-shadow: 0 0 12px rgba(255,255,255,.75); }
    100% { color: #0B2A46; text-shadow: none; }
  }
  @keyframes heroSweepBlue {
    0%   { color: #FFFFFF; text-shadow: 0 0 26px rgba(255,255,255,1), 0 0 48px rgba(20,120,184,.45); }
    40%  { color: #FFFFFF; text-shadow: 0 0 12px rgba(255,255,255,.75); }
    100% { color: #1B86C9; text-shadow: none; }
  }
  @keyframes infTrace {
    0%   { stroke-dashoffset: 1; opacity: 0; }
    8%   { opacity: 1; }
    92%  { opacity: 1; }
    100% { stroke-dashoffset: -1; opacity: 0; }
  }
  @keyframes charSweepDark {
    0%   { color: #FFFFFF; text-shadow: 0 0 26px rgba(255,255,255,1), 0 0 48px rgba(20,120,184,.45); }
    40%  { color: #FFFFFF; text-shadow: 0 0 12px rgba(255,255,255,.75); }
    100% { color: #10161F; text-shadow: none; }
  }
  @keyframes charSweepBlue {
    0%   { color: #FFFFFF; text-shadow: 0 0 26px rgba(255,255,255,1), 0 0 48px rgba(20,120,184,.45); }
    40%  { color: #FFFFFF; text-shadow: 0 0 12px rgba(255,255,255,.75); }
    100% { color: #1478B8; text-shadow: none; }
  }
  @media (max-width: 700px) {
    [data-r~="practicepic"] { height: 250px !important; min-height: 250px !important; max-height: 250px !important; }
    [data-r~="practicefit"] img { object-fit: cover !important; width: 100% !important; height: 100% !important; object-position: 50% 28% !important; }
    [data-r~="services-art"] img[aria-hidden="true"] { display: none !important; }
    [data-r~="eyebrow"] { font-size: 13px !important; letter-spacing: .22em !important; }
    [data-r~="num"] { font-size: 13px !important; }
    #top h1 { font-size: 46px !important; line-height: .94 !important; }
    [data-r~="timelift"] em { font-size: 46px !important; line-height: .96 !important; }
    #top p { font-size: 19px !important; }
    [data-r~="metarow"] { flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; font-size: 18px !important; gap: 18px !important; margin-top: 34px !important; }
    [data-r~="metarow"] > span { align-items: center !important; justify-content: center !important; text-align: center !important; white-space: normal !important; }
    [data-r~="namecard"] { inset: 22px 22px auto auto !important; text-align: center !important; max-width: 62% !important; }
    [data-r~="namecard"] > div:first-child { font-size: 17px !important; white-space: normal !important; }
    [data-r~="statgrid"] > div { padding: 26px 0 !important; border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,.16) !important; text-align: center !important; }
    [data-r~="statgrid"] > div > div:first-child { font-size: 34px !important; }
    [data-r~="statgrid"] > div > div:last-child { font-size: 18px !important; }
    section h2 { font-size: 34px !important; }
    section h3 { font-size: 23px !important; white-space: normal !important; }
    section p:not([data-r~="bigquote"]) { font-size: 17px !important; }
    [data-r~="bigquote"] { font-size: 30px !important; line-height: 1.3 !important; }
    [data-r~="pquote"] { font-size: 34px !important; }
    [data-r~="nameplate"] > div:first-child { font-size: 24px !important; }
    [data-r~="nameplate"] > div:last-child { font-size: 12px !important; }
    [data-r~="credrows"] > div { font-size: 17px !important; }
    label > span[data-r~="num"] { font-size: 13px !important; }
    input, textarea { font-size: 17px !important; }
    [data-r~="finenote"] { font-size: 15px !important; }
    [data-r~="memwide"] { grid-column: span 1 !important; }
    [data-r~="legal"] { font-size: 15px !important; text-align: center !important; justify-content: center !important; }
    [data-r~="legal"] > div { justify-content: center !important; flex-wrap: wrap !important; }
    [data-r~="svcname"] { font-size: 22px !important; }
    [data-r~="svcnote"] { font-size: 17px !important; }
    [data-r~="svccard"] { padding: 22px 20px 26px !important; gap: 11px !important; }
    section h2 { font-size: 38px !important; }
    [data-r~="eyebrow"] { font-size: 14px !important; }
    [data-r~="footgrid"] { text-align: center !important; justify-items: center !important; gap: 40px !important; }
    [data-r~="footgrid"] > div { align-items: center !important; }
    [data-r~="footgrid"] img { margin: 0 auto !important; }
    [data-r~="practicefit"] { height: 300px !important; min-height: 300px !important; max-height: 300px !important; }
  }

  .hv-blue:hover { color: #1478B8 !important; }
  .hv-scale:hover { transform: scale(1.03); }
  .hv-outline:hover { border-color: #1478B8 !important; color: #1478B8 !important; }
  .hv-lift:hover { transform: translateY(-3px); box-shadow: 0 22px 44px rgba(7,14,26,.24) !important; }
  .hv-ghost:hover { border-color: #FFFFFF !important; background: rgba(255,255,255,.1) !important; }
  .imc-field:focus { border-bottom-color: #1478B8 !important; }
  .imc-field-dark:focus { border-bottom-color: #7FC4EC !important; }
  [data-spy].is-active { color: #1478B8 !important; }
  [hidden] { display: none !important; }
  .imc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
  .imc-page { max-width: 860px; margin: 0 auto; padding: 80px 24px 120px; font-size: 17px; line-height: 1.7; }
  .imc-page h1 { font-family: 'Newsreader', Georgia, serif; font-weight: 600; font-size: 44px; line-height: 1.1; margin: 0 0 28px; }
  .imc-page a { color: #1478B8; }
  body.imc-lock { overflow: hidden; }
  .imc-legal { font-size: 17px; line-height: 1.75; font-weight: 300; color: #39424F; max-width: 720px; }
  .imc-legal > *:first-child { margin-top: 0; }
  .imc-legal h2 { font-family: 'Newsreader', Georgia, serif; font-weight: 600; font-size: clamp(26px, 2.6vw, 32px); line-height: 1.2; color: #10161F; margin: 56px 0 16px; padding-top: 28px; border-top: 1px solid #E6E2DA; }
  .imc-legal h3 { font-size: 18px; font-weight: 400; color: #10161F; margin: 32px 0 10px; }
  .imc-legal p { margin: 0 0 18px; }
  .imc-legal ul, .imc-legal ol { margin: 0 0 22px; padding-left: 22px; }
  .imc-legal li { margin: 0 0 8px; }
  .imc-legal strong { font-weight: 600; color: #10161F; }
  .imc-legal a { color: #1478B8; border-bottom: 1px solid rgba(20,120,184,.35); }
  .imc-legal .imc-lead { font-size: 19px; color: #10161F; }
  @media (max-width: 900px) { .imc-legal-wrap { grid-template-columns: minmax(0,1fr) !important; } .imc-legal-wrap aside { position: static !important; } }

