/* Medilife Amenities — shared styles (Upload 10) */
body { margin: 0; background: #f7f2e8; font-family: 'Archivo', sans-serif; color: #241a10; }
a { color: #241a10; text-decoration: none; }
a:hover { opacity: 0.8; }
input, select, textarea { font-family: 'Archivo', sans-serif; color: #241a10; }
[hidden] { display: none !important; }
.pcard { display: flex; flex-direction: column; }
html, body { overflow-x: clip; }
img { max-width: 100%; }

@keyframes ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes pageIn { from { opacity: 0; transform: translateY(20px); filter: blur(9px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes rise { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes lineUp { from { transform: translateY(115%); } to { transform: none; } }
@keyframes trackIn { from { opacity: 0; letter-spacing: 0.52em; } to { opacity: 1; letter-spacing: 0.32em; } }
@keyframes kbA { from { transform: scale(1); } to { transform: scale(1.09); } }
@keyframes kbB { from { transform: scale(1.08); } to { transform: scale(1); } }
@keyframes kbC { from { transform: scale(1.02) translateX(-1.5%); } to { transform: scale(1.1) translateX(1.5%); } }
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; animation-delay: 0ms !important; transition-duration: 0.01ms !important; }
}

/* Hover behaviours (replaces per-element JS hover styling) */
.btn { transition: background 0.25s, transform 0.25s, opacity 0.25s, border-color 0.25s; }
.btn:hover { transform: translateY(-2px); opacity: 1; }
a.btn-dark:hover { background: #3a2b1a; }
a.btn-ghost:hover { border-color: #241a10; background: rgba(36,26,16,0.05); }
.card { transition: transform 0.35s cubic-bezier(0.2,0.6,0.2,1), box-shadow 0.35s, border-color 0.35s; }
.card:hover { transform: translateY(-4px); border-color: rgba(36,26,16,0.32); box-shadow: 0 16px 34px rgba(36,26,16,0.09); }
a.card:hover { opacity: 1; }
.zoom { transition: transform 1.1s cubic-bezier(0.16,0.7,0.2,1); }
.card:hover .zoom { transform: scale(1.07); }
.clientcard { transition: border-color 0.3s; }
.clientcard:hover { border-color: rgba(36,26,16,0.35); }
.clientlogo { filter: grayscale(1); transition: filter 0.3s; }
.clientcard:hover .clientlogo { filter: grayscale(0); }

/* Products page filter chips */
.chip { font-family: 'Archivo', sans-serif; font-size: 13px; font-weight: 600; cursor: pointer; padding: 11px 24px; letter-spacing: 0.04em; border: 1px solid rgba(36,26,16,0.35); background: transparent; color: #241a10; }
.chip.active { border-color: #241a10; background: #241a10; color: #e9c98a; }

/* Format picker thumbs */
.fmt { background: none; border: none; padding: 0; cursor: pointer; font-family: inherit; }
.fmt img { transition: border-color 0.2s, box-shadow 0.2s; }
.fmt:hover img { border-color: rgba(36,26,16,0.5); }
.fmt[aria-pressed="true"] img { border-color: #241a10 !important; box-shadow: 0 0 0 1px #241a10; }

/* ---- Mobile ---- */
@media (max-width: 980px) {
  header { position: static !important; flex-wrap: wrap !important; }
  header > a > span { display: none !important; }
  header nav { flex-wrap: wrap !important; row-gap: 6px !important; }
  main div[data-hero-rotator="1"] { min-height: 340px !important; }
  main div[data-hero-rotator="1"] img { height: 100% !important; }
}
@media (max-width: 820px) {
  h1 { font-size: 40px !important; line-height: 1.06 !important; }
  h2 { font-size: 33px !important; line-height: 1.1 !important; }
  header { position: static !important; flex-wrap: wrap !important; padding: 12px 16px !important; gap: 10px !important; }
  header nav { flex-wrap: wrap !important; row-gap: 6px !important; }
  header nav a { font-size: 13px !important; padding: 8px 10px !important; }
  header nav a[style*="margin-left"] { margin-left: 4px !important; padding: 10px 18px !important; }
  main div[style*="grid-template-columns"], main form[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  main div[style*="grid-template-columns: 1fr 1fr 1fr"], main div[style*="grid-template-columns:1fr 1fr 1fr"] { grid-template-columns: repeat(3, 1fr) !important; gap: 10px !important; }
  main div[style*="repeat(8"] { grid-template-columns: repeat(3, 1fr) !important; gap: 18px !important; }
  main fieldset div[style*="grid-template-columns"] { grid-template-columns: 1fr 1fr !important; }
  main div[style*="640px"] { min-height: 0 !important; }
  main div[style*="border-left"] { border-left: none !important; }
  main div[style*="border-left"] img { height: 320px !important; }
  main div[style*="justify-content: space-between"], main div[style*="justify-content:space-between"] { flex-wrap: wrap !important; }
  main div[style*="gap: 14px"], main div[style*="gap:14px"] { flex-wrap: wrap !important; }
  main div[style*="margin-top: 52px"] { flex-wrap: wrap !important; gap: 10px 14px !important; }
  main div[style*="display: grid"][style*="border-top"] > div, main div[style*="display:grid"][style*="border-top"] > div { padding: 22px 0 !important; border-right: none !important; border-bottom: 1px solid rgba(36,26,16,0.18) !important; }
  main div[style*="right: -18px"], main div[style*="right:-18px"] { right: 0px !important; bottom: -14px !important; }
  [style*="padding: 44px 72px 72px"], [style*="padding:44px 72px 72px"] { padding: 44px 20px 48px !important; }
  [style*="padding: 92px 64px 84px"], [style*="padding:92px 64px 84px"] { padding: 52px 20px 48px !important; }
  [style*="padding: 96px 64px"], [style*="padding:96px 64px"] { padding: 52px 20px !important; }
  [style*="padding: 92px 64px 72px"], [style*="padding:92px 64px 72px"] { padding: 52px 20px 40px !important; }
  [style*="padding: 0px 64px 92px"], [style*="padding: 0 64px 92px"], [style*="padding:0 64px 92px"] { padding: 0 20px 52px !important; }
  [style*="padding: 52px 64px 92px"], [style*="padding:52px 64px 92px"] { padding: 40px 20px 52px !important; }
  [style*="padding: 88px 64px"], [style*="padding:88px 64px"] { padding: 52px 20px !important; }
  [style*="margin: 0px 64px 92px"], [style*="margin: 0 64px 92px"], [style*="margin:0 64px 92px"] { margin: 0 20px 52px !important; }
  [style*="padding: 46px 52px"], [style*="padding: 54px 56px"], [style*="padding: 38px 42px"], [style*="padding: 40px 48px"], [style*="padding: 48px 46px"] { padding: 26px 20px !important; }
  [style*="font-size: 52px"], [style*="font-size:52px"] { font-size: 34px !important; }
  [style*="font-size: 46px"], [style*="font-size:46px"] { font-size: 32px !important; }
  [style*="font-size: 40px"], [style*="font-size:40px"] { font-size: 28px !important; }
  [style*="font-size: 38px"], [style*="font-size:38px"] { font-size: 28px !important; }
  [style*="font-size: 34px"], [style*="font-size:34px"] { font-size: 26px !important; }
  [style*="font-size: 32px"], [style*="font-size:32px"] { font-size: 26px !important; }
  [style*="gap: 72px"], [style*="gap: 64px"], [style*="gap: 56px"] { gap: 28px !important; }
  [style*="padding: 19px 40px"], [style*="padding: 19px 42px"], [style*="padding: 19px 46px"], [style*="padding: 18px 36px"], [style*="padding: 18px 38px"], [style*="padding: 17px 36px"], [style*="padding: 17px 34px"], [style*="padding: 16px 32px"], [style*="padding: 15px 32px"], [style*="padding: 15px 28px"] { padding: 14px 22px !important; }
  footer { flex-direction: column !important; align-items: flex-start !important; padding: 28px 20px !important; gap: 18px !important; }
  footer > div { flex-wrap: wrap !important; }
  footer div[style*="1.4fr 1fr 1fr"] { grid-template-columns: 1fr 1fr !important; gap: 22px !important; }
  main div[style*="repeat(3, 1fr)"][style*="gap: 28px"] { grid-template-columns: 1fr !important; }
}
/* Hero headline: keep the longest line on one line in the 2-column band */
@media (min-width: 821px) and (max-width: 1020px) { h1[style*="clamp"] { font-size: 34px !important; } }
@media (min-width: 1021px) and (max-width: 1240px) { h1[style*="clamp"] { font-size: 48px !important; } }
