/* Home page, screens G1–G8 (G9 is in midwood.css). Every size is the approved mock-up's pixel at 1536 (N * var(--s)),
   measured with tools/measure_mock.py home; layout boxes read off the r-*.png files in codex/home/ (screen folders). */

/* G1 first screen (g1v2 D) */
.mk-hero { position: relative; background: var(--hero-navy); color: var(--white); min-height: calc(645 * var(--s)); overflow: hidden; }
.mk-hero__photo { position: absolute; inset: 0; }
.mk-hero__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 18%; }
@media (min-width: 1700px) { .mk-hero__photo img { object-position: 60% 62%; } }   /* the band gets flatter above 1536: keep the outdoor unit in frame */
.mk-hero__photo::after { content: ''; position: absolute; inset: 0;
	background: linear-gradient(90deg, rgba(6, 32, 61, .97) 0%, rgba(6, 32, 61, .9) 30%, rgba(6, 32, 61, .55) 46%, rgba(6, 32, 61, 0) 60%); }
.mk-hero__in { position: relative; padding-top: calc(80 * var(--s)); padding-bottom: calc(118 * var(--s)); }
.mk-hero .mk-eyebrow { font-weight: 600; font-size: var(--t-xs); letter-spacing: .3em; margin: 0; }
.mk-hero__title { color: var(--white); font-size: var(--t-h1); line-height: 1.06; max-width: calc(770 * var(--s)); margin-top: calc(32 * var(--s)); }
.mk-hero__sub { font-size: var(--t-xl); line-height: 1.5; max-width: calc(700 * var(--s)); margin-top: calc(26 * var(--s)); }
.mk-hero__sub-short { display: none; }
.mk-hero__btns { display: flex; align-items: center; gap: calc(32 * var(--s)); margin-top: calc(44 * var(--s)); }
.mk-hero__btns .mk-btn { width: calc(292 * var(--s)); height: calc(68 * var(--s)); padding: 0; }
.mk-hero__link { font-size: var(--t-l); }

.mk-band__in { display: grid; grid-template-columns: calc(758 * var(--s)) 1fr; gap: calc(44 * var(--s)); padding-top: calc(25 * var(--s)); padding-bottom: calc(44 * var(--s)); padding-right: calc(34 * var(--s)); }
.mk-search { display: flex; height: calc(66 * var(--s)); min-height: 48px; border: 1.5px solid var(--blue); border-radius: var(--r); overflow: hidden; background: var(--white); }
.mk-search input { flex: 1; min-width: 0; border: 0; padding: 0 calc(22 * var(--s)); font-size: max(16px, calc(19.4 * var(--s))); color: var(--ink); outline: none; }
.mk-search input::placeholder { color: #6A707C; }
.mk-search button { flex: none; width: calc(82 * var(--s)); min-width: 52px; border: 0; background: var(--blue); color: var(--white); cursor: pointer; display: grid; place-items: center; }
.mk-search button .mk-i { width: calc(34 * var(--s)); height: calc(34 * var(--s)); min-width: 22px; min-height: 22px; }
.mk-band__try { color: var(--muted); font-size: var(--t-xs); margin-top: calc(9 * var(--s)); }
.mk-band__try a:hover { color: var(--blue); }
.mk-band .mk-chips { margin-top: calc(18 * var(--s)); gap: calc(12 * var(--s)); }
.mk-band .mk-chip { padding: 0 calc(26 * var(--s)); }
.mk-band__facts { display: grid; grid-template-columns: 1fr 1fr; border-left: 1px solid var(--line); padding-left: calc(4 * var(--s)); }
.mk-band__facts li { display: flex; align-items: center; gap: calc(16 * var(--s)); padding: calc(16 * var(--s)) calc(16 * var(--s)); font-size: var(--t-xs); color: var(--ink); }
.mk-band__facts li:nth-child(odd) { border-right: 1px solid var(--line); }
.mk-band__facts li:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
.mk-band__facts .mk-i { color: var(--blue); width: calc(46 * var(--s)); height: calc(46 * var(--s)); }
.mk-band__shop { display: none; }

/* G2 shop by category (A) */
.mk-cats { background: var(--bg-cool); padding: calc(40 * var(--s)) 0 calc(64 * var(--s)); }
.mk-cats .mk-eyebrow { font-size: var(--t-xs); }
.mk-cats__title { font-size: var(--t-h2); margin-top: calc(4 * var(--s)); }
.mk-cats__grid { display: grid; grid-template-columns: 580fr 392fr 424fr; grid-template-rows: auto auto; gap: calc(17 * var(--s)) calc(16 * var(--s)); margin-top: calc(20 * var(--s)); }
.mk-cat { background: var(--white); border: 1px solid var(--line); border-radius: var(--r); padding: calc(26 * var(--s)) calc(25 * var(--s)) calc(24 * var(--s)); display: flex; flex-direction: column; }
.mk-cat--big { grid-row: span 2; padding: calc(26 * var(--s)) calc(25 * var(--s)) calc(28 * var(--s)); }
.mk-cat__img { display: grid; place-items: center; height: calc(212 * var(--s)); margin-bottom: calc(18 * var(--s)); }
.mk-cat--big .mk-cat__img { height: auto; flex: 1; margin-bottom: calc(26 * var(--s)); }
.mk-cat__img img { max-height: calc(212 * var(--s)); max-width: 100%; width: auto; object-fit: contain; }
.mk-cat--big .mk-cat__img img { max-height: calc(440 * var(--s)); }
.mk-cat__name { font-size: var(--t-h5); font-weight: 600; letter-spacing: -.01em; }
.mk-cat--big .mk-cat__name { font-size: var(--t-h4); }
.mk-cat__name a:hover { color: var(--blue); }
.mk-cat__count { color: var(--muted); font-size: var(--t-s); margin-top: calc(4 * var(--s)); }
.mk-cat--big .mk-cat__count { font-size: var(--t-xl); }
.mk-cat__subs { display: grid; grid-template-columns: max-content max-content; justify-content: space-between; gap: calc(4 * var(--s)) calc(16 * var(--s)); margin-top: calc(14 * var(--s)); }
.mk-cat__subs a { color: var(--blue); font-size: var(--t-s); line-height: 1.6; }
.mk-cat--big .mk-cat__subs { margin-top: calc(22 * var(--s)); gap: calc(10 * var(--s)) calc(40 * var(--s)); justify-content: start; grid-template-columns: calc(250 * var(--s)) max-content; }
.mk-cat--big .mk-cat__subs a { font-size: var(--t-m); }
.mk-cat__subs a:hover { text-decoration: underline; }
.mk-cats__more { text-align: center; margin-top: calc(18 * var(--s)); }
.mk-btn--wide { width: calc(331 * var(--s)); height: calc(52 * var(--s)); padding: 0; font-size: var(--t-s); }

/* G3 find the right system (C) */
.mk-find__blue { background: var(--blue-band); color: var(--white); padding: calc(90 * var(--s)) 0 calc(40 * var(--s)); }
.mk-find .mk-eyebrow { font-size: var(--t-xs); }
.mk-find__title { color: var(--white); font-size: var(--t-h1); line-height: 1; margin-top: calc(14 * var(--s)); }
.mk-find__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(17 * var(--s)); margin-top: calc(32 * var(--s)); }
.mk-find__card { display: flex; flex-direction: column; border: 1.5px solid rgba(255, 255, 255, .78); border-radius: var(--r); padding: calc(40 * var(--s)) calc(24 * var(--s)) calc(30 * var(--s)); min-height: calc(476 * var(--s)); transition: background .2s; }
.mk-find__card:hover { background: rgba(255, 255, 255, .07); }
.mk-find__card .mk-ill { width: 100%; height: calc(176 * var(--s)); color: var(--white); margin-bottom: calc(26 * var(--s)); stroke-width: 1.1; }
.mk-find__name { color: var(--white); font-weight: 600; font-size: var(--t-h5); letter-spacing: -.03em; line-height: 1.1; white-space: nowrap; }
.mk-find__text { font-size: var(--t-l); line-height: 1.42; margin-top: calc(14 * var(--s)); }
.mk-find__link { display: inline-flex; align-items: center; gap: .5em; font-weight: 600; font-size: var(--t-xl); white-space: nowrap; letter-spacing: -.01em; margin-top: auto; padding-top: calc(24 * var(--s)); }
.mk-find__filters { display: flex; flex-wrap: wrap; align-items: center; gap: calc(22 * var(--s)); margin-top: calc(38 * var(--s)); }
.mk-find__filters > span { font-weight: 600; font-size: var(--t-h5); margin-right: calc(2 * var(--s)); }
.mk-find__help { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: calc(45 * var(--s)); padding-bottom: calc(58 * var(--s)); }
.mk-find__help p { color: var(--ink); font-weight: 600; font-size: var(--t-h4); letter-spacing: -.01em; }
.mk-find__help .mk-btn { width: calc(405 * var(--s)); height: calc(76 * var(--s)); padding: 0; flex: none; }

/* G4 popular equipment (C) */
.mk-top { padding: calc(70 * var(--s)) 0 calc(70 * var(--s)); }
.mk-top .mk-wrap { padding-left: calc(75 * var(--s)); padding-right: calc(72 * var(--s)); }
.mk-top__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--line); padding-bottom: calc(16 * var(--s)); }
.mk-top .mk-eyebrow { font-size: var(--t-xs); letter-spacing: .2em; margin-bottom: calc(4 * var(--s)); }
.mk-top__title { font-size: var(--t-h1); line-height: 1; }
.mk-top__lead { color: var(--muted); font-size: var(--t-l); margin-top: calc(10 * var(--s)); }
.mk-top__head .mk-link { font-size: var(--t-m); margin-bottom: calc(4 * var(--s)); }
.mk-top__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(21 * var(--s)) calc(26 * var(--s)); margin-top: calc(18 * var(--s)); }
.mk-top__ship { text-align: center; color: var(--muted); font-size: var(--t-xs); margin-top: calc(28 * var(--s)); }

/* G5 installation & service in Texas (A) */
.mk-svc { background: var(--navy); color: var(--white); padding: calc(96 * var(--s)) 0; }
.mk-svc__in { display: grid; grid-template-columns: calc(446 * var(--s)) 1fr; gap: calc(20 * var(--s)); align-items: center; }
.mk-svc .mk-eyebrow { font-size: var(--t-xs); letter-spacing: .2em; }
.mk-svc__title { letter-spacing: -.025em; color: var(--white); font-size: var(--t-h2); line-height: 1.13; margin-top: calc(20 * var(--s)); }
.mk-svc__lead { font-size: var(--t-l); line-height: 1.3; margin-top: calc(30 * var(--s)); }
.mk-svc__btns { display: grid; gap: calc(17 * var(--s)); margin-top: calc(40 * var(--s)); max-width: calc(408 * var(--s)); }
.mk-svc__btns .mk-btn { height: calc(61 * var(--s)); padding: 0; font-size: var(--t-m); }
.mk-svc__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(12 * var(--s)); }
.mk-svc__card { background: var(--white); border-radius: var(--r); overflow: hidden; display: flex; flex-direction: column; }
.mk-svc__card img { width: 100%; aspect-ratio: 315 / 250; object-fit: cover; }
.mk-svc__body { padding: calc(26 * var(--s)) calc(28 * var(--s)) calc(28 * var(--s)); display: flex; flex-direction: column; flex: 1; }
.mk-svc__body h3 { font-size: var(--t-xl); font-weight: 600; letter-spacing: -.01em; }
.mk-svc__body p { color: var(--muted); font-size: var(--t-s); line-height: 1.32; margin-top: calc(16 * var(--s)); }
.mk-svc__body .mk-link { font-size: var(--t-s); margin-top: auto; padding-top: calc(26 * var(--s)); }

/* G6 why Midwood Kings (A) */
.mk-why { background: var(--bg-cool); padding-top: calc(90 * var(--s)); }
.mk-why__head { display: grid; grid-template-columns: calc(560 * var(--s)) 1fr; gap: calc(30 * var(--s)); align-items: center; }
.mk-why .mk-eyebrow { font-size: var(--t-xs); letter-spacing: .2em; }
.mk-why__title { font-size: var(--t-h2); line-height: 1.1; margin-top: calc(10 * var(--s)); }
.mk-why__nums { display: grid; grid-template-columns: repeat(4, 1fr); }
.mk-why__nums > div { padding: 0 calc(20 * var(--s)); }
.mk-why__nums > div + div { border-left: 1px solid var(--line); }
.mk-why__nums dt { color: var(--blue); font-weight: 700; font-size: var(--t-display); line-height: 1; letter-spacing: -.02em; }
.mk-why__nums dd { color: var(--muted); font-size: var(--t-m); margin-top: calc(14 * var(--s)); white-space: nowrap; }
.mk-why__promises { display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(22 * var(--s)); margin-top: calc(50 * var(--s)); }
.mk-why__promises li { background: var(--white); border: 1px solid var(--line); border-radius: var(--r); min-height: calc(250 * var(--s)); padding: calc(36 * var(--s)) calc(28 * var(--s)); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: calc(28 * var(--s)); color: var(--ink); font-size: var(--t-l); line-height: 1.2; }
.mk-why__promises .mk-i { color: var(--blue); width: calc(84 * var(--s)); height: calc(84 * var(--s)); }
.mk-why__brands { background: var(--white); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin-top: calc(64 * var(--s)); padding: calc(28 * var(--s)) 0 calc(40 * var(--s)); text-align: center; }
.mk-why__brands-t { color: var(--ink); font-weight: 600; font-size: var(--t-xl); }
.mk-why__brands ul { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px calc(30 * var(--s)); margin-top: calc(30 * var(--s)); color: #5F6570; font-weight: 500; font-size: var(--t-s); letter-spacing: .02em; }

/* G7 reviews (A) */
.mk-reviews { padding: calc(90 * var(--s)) 0 calc(60 * var(--s)); }
.mk-reviews__title { font-size: var(--t-h1); line-height: 1; margin-top: calc(4 * var(--s)); }
.mk-reviews__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(23 * var(--s)); margin-top: calc(40 * var(--s)); }
.mk-review { border: 1px solid var(--line); border-radius: var(--r); padding: calc(32 * var(--s)) calc(32 * var(--s)) calc(44 * var(--s)); display: flex; flex-direction: column; min-height: calc(484 * var(--s)); }
.mk-review > .mk-i { color: #5B95DB; width: calc(56 * var(--s)); height: calc(56 * var(--s)); }
.mk-review blockquote { color: var(--muted); font-size: var(--t-l); line-height: 1.64; margin-top: calc(26 * var(--s)); }
.mk-review figcaption { display: flex; align-items: center; gap: calc(26 * var(--s)); margin-top: auto; padding-top: calc(30 * var(--s)); color: var(--muted); font-size: var(--t-xs); line-height: 1.45; }
.mk-review figcaption strong { display: block; color: var(--ink); font-weight: 600; font-size: var(--t-m); }
.mk-review__ini { flex: none; display: grid; place-items: center; width: calc(74 * var(--s)); height: calc(74 * var(--s)); min-width: 48px; min-height: 48px; border-radius: 50%; background: var(--blue); color: var(--white); font-weight: 600; font-size: var(--t-h5); }
.mk-reviews__follow { display: flex; justify-content: center; align-items: center; gap: calc(40 * var(--s)); border-top: 1px solid var(--line); margin-top: calc(68 * var(--s)); padding-top: calc(40 * var(--s)); flex-wrap: wrap; }
.mk-reviews__follow span { flex-basis: 100%; text-align: center; color: var(--ink); font-weight: 600; font-size: var(--t-l); }
.mk-reviews__follow a { color: var(--blue); }
.mk-reviews__follow .mk-i { width: calc(34 * var(--s)); height: calc(34 * var(--s)); min-width: 26px; min-height: 26px; }

/* G8 news & insights (C; on the light background so it does not merge with the white reviews above) */
.mk-news { background: var(--bg-cool); padding: calc(90 * var(--s)) 0 calc(80 * var(--s)); }
.mk-news__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.mk-news__title { font-size: var(--t-h1); line-height: 1; margin-top: calc(4 * var(--s)); }
.mk-news__lead { color: var(--muted); font-size: var(--t-m); margin-top: calc(14 * var(--s)); }
.mk-news__head .mk-link { margin-top: calc(56 * var(--s)); }
.mk-news__list { margin-top: calc(40 * var(--s)); }
.mk-post { display: grid; grid-template-columns: calc(327 * var(--s)) 1fr auto; gap: calc(40 * var(--s)); align-items: start; padding: calc(22 * var(--s)) 0; border-top: 1px solid var(--line); }
.mk-post:first-child { border-top: 0; padding-top: 0; }
.mk-post__img img { width: 100%; aspect-ratio: 327 / 210; object-fit: cover; border-radius: var(--r); }
.mk-post__cat { color: var(--blue); font-weight: 600; font-size: var(--t-label); letter-spacing: .15em; text-transform: uppercase; margin-top: calc(8 * var(--s)); }
.mk-post__title { font-weight: 600; font-size: var(--t-h5); line-height: 1.17; letter-spacing: -.01em; margin-top: calc(12 * var(--s)); max-width: calc(680 * var(--s)); }
.mk-post__title a:hover { color: var(--blue); }
.mk-post__line { color: var(--muted); font-size: var(--t-l); line-height: 1.3; margin-top: calc(14 * var(--s)); }
.mk-post__by { color: var(--muted); font-size: var(--t-s); margin-top: calc(14 * var(--s)); }
.mk-post__date { color: var(--muted); font-size: var(--t-m); white-space: nowrap; margin-top: calc(8 * var(--s)); }

/* Phones: the approved phone screen g1v2 M (photo 3:2 fading into the navy block, search and facts above the fold) */
@media (max-width: 900px) {
	.mk-hero { min-height: 0; display: flex; flex-direction: column; }
	.mk-hero__photo { position: relative; inset: auto; aspect-ratio: 3 / 2; }
	.mk-hero__photo img { object-position: 78% 60%; }
	.mk-hero__photo::after { background: linear-gradient(180deg, rgba(6, 32, 61, 0) 45%, rgba(6, 32, 61, .85) 82%, var(--hero-navy) 100%); }
	.mk-hero__in { margin-top: -34px; padding-top: 0; padding-bottom: 14px; }
	.mk-hero .mk-eyebrow { letter-spacing: .22em; }
	.mk-hero__title { line-height: 1.06; margin-top: 10px; max-width: none; }
	.mk-hero__sub { margin-top: 10px; max-width: none; }
	.mk-hero__sub-wide { display: none; }
	.mk-hero__sub-short { display: inline; }
	.mk-hero__btns { display: none; }
	.mk-band { background: var(--hero-navy); }
	.mk-band__in { grid-template-columns: 1fr; gap: 12px; padding-top: 4px; padding-bottom: 18px; }
	.mk-band__try, .mk-band .mk-chips { display: none; }
	.mk-search { border-color: var(--white); }
	.mk-band__shop { display: flex; width: 100%; margin-top: 12px; height: 50px;  font-weight: 600; }
	.mk-band__facts { border: 0; padding: 0; gap: 8px; }
	.mk-band__facts li { background: var(--white); border: 0 !important; border-radius: var(--r); padding: 9px 10px; gap: 8px;  line-height: 1.2; }
	.mk-band__facts .mk-i { width: 22px; height: 22px; }

	.mk-cats, .mk-top, .mk-svc, .mk-reviews, .mk-news { padding: 48px 0; }
	.mk-why { padding-top: 48px; }
	.mk-find__blue { padding: 48px 0 32px; }
	.mk-eyebrow, .mk-cats .mk-eyebrow, .mk-find .mk-eyebrow, .mk-top .mk-eyebrow, .mk-svc .mk-eyebrow, .mk-why .mk-eyebrow { letter-spacing: .2em; }
	.mk-cats__title, .mk-find__title, .mk-top__title, .mk-svc__title, .mk-why__title, .mk-reviews__title, .mk-news__title { line-height: 1.08; }
	.mk-cats__grid { grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 18px; }
	.mk-cat, .mk-cat--big { padding: 14px; }
	.mk-cat--big { grid-column: 1 / -1; grid-row: auto; }
	.mk-cat__img { height: 120px; }
	.mk-cat__img img { max-height: 110px; }
	.mk-cat--big .mk-cat__img img { max-height: 240px; }
	.mk-cat__subs, .mk-cat--big .mk-cat__subs { grid-template-columns: 1fr; gap: 2px; margin-top: 8px; }
	.mk-btn--wide { width: 100%; height: 50px;  }
	.mk-find__grid { grid-template-columns: 1fr; gap: 12px; margin-top: 20px; }
	.mk-find__card { min-height: 0; padding: 20px; display: grid; grid-template-columns: 96px 1fr; column-gap: 16px; }
	.mk-find__card .mk-ill { width: 96px; height: 70px; margin: 0; grid-row: span 3; }
	.mk-find__name { white-space: normal; }
	.mk-find__text { margin-top: 4px; }
	.mk-find__link { padding-top: 10px; }
	.mk-find__filters { gap: 8px; margin-top: 20px; }
	.mk-find__filters > span { flex-basis: 100%;  }
	.mk-chip--light { height: 38px; padding: 0 14px; }
	.mk-find__help { flex-direction: column; align-items: stretch; padding-top: 24px; padding-bottom: 28px; }
	.mk-find__help .mk-btn { width: 100%; height: 54px;  }
	.mk-top .mk-wrap { padding-left: 16px; padding-right: 16px; }
	.mk-top__head { flex-direction: column; align-items: flex-start; }
	.mk-top__grid { grid-template-columns: 1fr 1fr; gap: 24px 12px; }
	.mk-svc__in, .mk-why__head { grid-template-columns: 1fr; gap: 24px; }
	.mk-svc__lead { margin-top: 14px; }
	.mk-svc__btns { max-width: none; margin-top: 20px; }
	.mk-svc__btns .mk-btn { height: 52px;  }
	.mk-svc__cards { grid-template-columns: 1fr; gap: 14px; }
	.mk-svc__body { padding: 18px; }
	.mk-svc__body p { margin-top: 8px; }
	.mk-svc__body .mk-link { padding-top: 14px; }
	.mk-why__nums { grid-template-columns: 1fr 1fr; gap: 16px 0; }
	.mk-why__nums > div:nth-child(3) { border-left: 0; }
	.mk-why__nums dd { margin-top: 4px; white-space: normal; }
	.mk-why__promises { grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 28px; }
	.mk-why__promises li { min-height: 0; padding: 18px 12px;  gap: 12px; }
	.mk-why__promises .mk-i { width: 44px; height: 44px; }
	.mk-why__brands { margin-top: 36px; padding: 20px 0 24px; }
	.mk-why__brands ul { justify-content: center;  gap: 10px 18px; margin-top: 14px; }
	.mk-reviews__grid { grid-template-columns: 1fr; gap: 14px; margin-top: 22px; }
	.mk-review { min-height: 0; padding: 20px; }
	.mk-review > .mk-i { width: 34px; height: 34px; }
	.mk-review blockquote { margin-top: 12px; }
	.mk-review figcaption { gap: 14px; padding-top: 18px; }
	.mk-reviews__follow { margin-top: 32px; padding-top: 24px; gap: 26px; }
	.mk-news__head { flex-direction: column; }
	.mk-news__head .mk-link { margin-top: 0;  }
	.mk-news__list { margin-top: 20px; }
	.mk-post { grid-template-columns: 112px 1fr; gap: 14px; padding: 16px 0; }
	.mk-post__date { grid-column: 2; grid-row: 1;  margin-top: 0; }
	.mk-post__body { grid-column: 2; }
	.mk-post__img { grid-row: span 2; }
	.mk-post__cat { margin-top: 4px; }
	.mk-post__title { margin-top: 4px; max-width: none; }
	.mk-post__line { margin-top: 6px; }
	.mk-post__by { margin-top: 6px; }
}