/* The Oaks — responsive overrides for the site's inline layouts.
   Selectors key off inline style signatures; each appears in compact (authored)
   and spaced (React-serialized) form. !important beats inline styles. */

@media (max-width: 920px) {
  .nav { flex-wrap: wrap; row-gap: 6px; gap: 18px; }
  /* The nav logo is set inline at 124px tall; height:auto + a width cap keeps its ratio
     as the bar narrows, and keeps the sticky header off a phone's screen. */
  .nav img { height: auto !important; max-width: min(260px, 58vw) !important; }
  div[style*="grid-template-columns:1.05fr 0.95fr"], div[style*="grid-template-columns: 1.05fr 0.95fr"],
  div[style*="grid-template-columns:1.1fr 0.9fr"], div[style*="grid-template-columns: 1.1fr 0.9fr"],
  div[style*="grid-template-columns:1.15fr 0.85fr"], div[style*="grid-template-columns: 1.15fr 0.85fr"],
  div[style*="grid-template-columns:0.85fr 1.15fr"], div[style*="grid-template-columns: 0.85fr 1.15fr"],
  div[style*="grid-template-columns:1.2fr 0.8fr"], div[style*="grid-template-columns: 1.2fr 0.8fr"] { grid-template-columns: 1fr !important; gap: 36px !important; }
  div[style*="grid-template-columns:repeat(3,1fr)"], div[style*="grid-template-columns: repeat(3,1fr)"], div[style*="grid-template-columns: repeat(3, 1fr)"] { grid-template-columns: 1fr 1fr !important; }
  div[style*="grid-template-columns:repeat(4,1fr)"], div[style*="grid-template-columns: repeat(4,1fr)"], div[style*="grid-template-columns: repeat(4, 1fr)"] { grid-template-columns: 1fr 1fr !important; }
  div[style*="grid-template-columns:1.4fr 1fr 1fr 1.2fr"], div[style*="grid-template-columns: 1.4fr 1fr 1fr 1.2fr"] { grid-template-columns: 1fr 1fr !important; }
  div[style*="position:sticky;top:24px"], div[style*="position: sticky; top: 24px"] { position: static !important; }
  image-slot[style*="width:400px"], image-slot[style*="width: 400px"] { width: min(400px, 84vw) !important; height: min(400px, 84vw) !important; }
  image-slot[style*="width:360px"], image-slot[style*="width: 360px"] { width: min(360px, 84vw) !important; height: min(360px, 84vw) !important; }
  div[style*="width:430px"], div[style*="width: 430px"] { width: min(430px, 88vw) !important; height: min(430px, 88vw) !important; }
  div[style*="width:380px"], div[style*="width: 380px"] { width: min(380px, 86vw) !important; height: min(380px, 86vw) !important; }
  div[style*="width:340px"], div[style*="width: 340px"] { width: min(340px, 70vw) !important; height: min(340px, 70vw) !important; }
  div[style*="right:-24px"], div[style*="right: -24px"] { right: 0 !important; }
  div[style*="left:-22px"], div[style*="left: -22px"] { left: 0 !important; }
  div[style*="left:-18px"], div[style*="left: -18px"] { left: 0 !important; }
}

@media (max-width: 700px) {
  h1 { font-size: clamp(32px, 9.5vw, 44px) !important; }
  h2 { font-size: clamp(26px, 7.5vw, 34px) !important; }
  h3 { font-size: clamp(21px, 6vw, 25px) !important; }
  div[style*="max-width:1180px"], div[style*="max-width: 1180px"],
  div[style*="max-width:880px"], div[style*="max-width: 880px"] { padding-left: 20px !important; padding-right: 20px !important; }
  div[style*="border-radius:calc(var(--radius-lg) * 1.3)"], div[style*="border-radius: calc(var(--radius-lg) * 1.3)"] { padding: 32px 24px !important; }
  div[style*="flex-direction:row;gap:32px"], div[style*="flex-direction: row; gap: 32px"] { flex-direction: column !important; }
  div[style*="flex-direction:row;gap:20px"], div[style*="flex-direction: row; gap: 20px"] { flex-direction: column !important; align-items: flex-start !important; }
  div[style*="grid-template-columns:auto 1fr"], div[style*="grid-template-columns: auto 1fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1fr 1fr"], div[style*="grid-template-columns: 1fr 1fr"] { grid-template-columns: 1fr !important; }
  div[style*="left:-46px"], div[style*="left: -46px"] { position: static !important; margin-top: 14px !important; }
  span[style*="margin-left:auto"], span[style*="margin-left: auto"] { display: none; }
  iframe[title="Schedule Appointment"] { height: 620px !important; }
}

@media (max-width: 560px) {
  div[style*="grid-template-columns:repeat(3,1fr)"], div[style*="grid-template-columns: repeat(3,1fr)"], div[style*="grid-template-columns: repeat(3, 1fr)"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1.4fr 1fr 1fr 1.2fr"], div[style*="grid-template-columns: 1.4fr 1fr 1fr 1.2fr"] { grid-template-columns: 1fr !important; }
  .nav a:not([class]) { font-size: 13.5px; }
}

@media (max-width: 560px) {
  .nav img { max-width: min(220px, 62vw) !important; }
}
