/* Methods & Mode — homepage polish (Cowork) */

/* White page background */
body.home,
.wp-site-blocks { background-color: #ffffff; }

/* ---------- SITE-WIDE TYPE SCALE (desktop-reduced, hierarchy kept) ---------- */
:root, body {
  --wp--preset--font-size--xx-large: clamp(30px, 1.6rem + 2.2vw, 44px) !important;
  --wp--preset--font-size--x-large: clamp(26px, 1.4rem + 1.6vw, 36px) !important;
  --wp--preset--font-size--large: clamp(20px, 1.15rem + 0.7vw, 24px) !important;
  --wp--preset--font-size--medium: clamp(15px, 0.95rem + 0.2vw, 17px) !important;
  --wp--preset--font-size--small: clamp(13px, 0.85rem + 0.1vw, 14px) !important;
}
@media (min-width: 782px) {
  body { font-size: 17px; }
  header .wp-block-navigation a,
  header .wp-block-navigation .wp-block-navigation-item__content { font-size: 15px !important; white-space: nowrap; }
}

/* ---------- HERO ---------- */
@media (min-width: 782px) {
  .wp-block-columns.are-vertically-aligned-center { align-items: stretch !important; max-width: none !important; }
  .wp-block-columns.are-vertically-aligned-center > .wp-block-column:last-child { align-self: stretch !important; }
  .wp-block-columns.are-vertically-aligned-center figure.wp-block-image { margin: 0 !important; height: 100%; }
  .wp-block-columns.are-vertically-aligned-center figure.wp-block-image img { width: 100% !important; height: 100% !important; aspect-ratio: auto !important; object-fit: cover; }
  .wp-block-columns.are-vertically-aligned-center h1 { font-size: var(--wp--preset--font-size--xx-large) !important; line-height: 1.1 !important; }
  .wp-block-columns.are-vertically-aligned-center .has-medium-font-size { font-size: var(--wp--preset--font-size--medium) !important; line-height: 1.5 !important; }
  .wp-block-columns.are-vertically-aligned-center > .wp-block-column:first-child { padding-left: max(0px, calc((100vw - 1264px) / 2)) !important; box-sizing: border-box; }
}
.wp-block-columns.are-vertically-aligned-center .wp-block-column:first-child p { line-height: 1.5; }

/* ---------- SERVICE CARDS ---------- */
.wp-block-media-text__content { padding-top: 20px !important; padding-bottom: 20px !important; display: flex; flex-direction: column; justify-content: center; }
.wp-block-media-text__content > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.wp-block-media-text__content > svg { display: none !important; }
.wp-block-media-text__content h3 { font-size: var(--wp--preset--font-size--large) !important; margin-bottom: 10px !important; line-height: 1.15 !important; }
.wp-block-media-text__content .wp-block-paragraph { line-height: 1.45 !important; }
.wp-block-media-text__content > p { margin-top: 12px !important; }
.wp-block-media-text__content > p:has(a) { margin-top: 8px !important; }
.wp-block-media-text__content > .wp-block-spacer { height: 8px !important; }
.wp-block-media-text__content > .wp-block-buttons { margin-top: 18px !important; }

/* Card images: cover crop + soft bottom fade */
.wp-block-media-text__media img { object-fit: cover; -webkit-mask-image: linear-gradient(to bottom, #000 80%, transparent 100%); mask-image: linear-gradient(to bottom, #000 80%, transparent 100%); }


/* ---------- SITE-WIDE PAGE TYPOGRAPHY NORMALIZATION (desktop) ---------- */
@media (min-width: 782px) {
  h1[style*="56px)"], h2[style*="56px)"] { font-size: 42px !important; }
  h1[style*="46px)"], h2[style*="46px)"] { font-size: 34px !important; }
  h1[style*="40px)"], h2[style*="40px)"] { font-size: 32px !important; }
  h1[style*="38px)"], h2[style*="38px)"] { font-size: 30px !important; }
  h2[style*="30px)"] { font-size: 26px !important; }
  h2[style*="28px)"] { font-size: 24px !important; }
  p[style*="38px)"] { font-size: 26px !important; }
  p[style*="28px)"] { font-size: 22px !important; }
  p[style*="24px)"] { font-size: 20px !important; }
  p[style*="22px)"] { font-size: 19px !important; }
  p[style*="20px)"] { font-size: 18px !important; }
  p[style*="18px)"] { font-size: 17px !important; }
}
