/* ─────────────────────────────────────────────────────────────────────────────
   Turnkey · Services (page 131) · direction v2 "The Open House", Restraint rules.
   v3, imagery-rich and decoration-free: Hero (full-bleed house photo, neutral dark overlay) · Buying (tall
   entry photo + ruled list) · Selling (large square porch photo + ruled list) · How it works (5-step line over
   a family-room photo) · About fees (accordion, the room photo swaps per answer) · Questions first? (brick house photo).
   Every rule is scoped to body.page-id-131, so nothing leaks to other pages.
   Built by tools/tk-services.php. Loaded after screen.css by the tk-*.css loader.
   ───────────────────────────────────────────────────────────────────────────── */
body.page-id-131 {
	--sv-ink: #2b3a4a; --sv-ink-d: #1f2a36; --sv-paper: #f7f4ee; --sv-linen: #ece4d6;
	--sv-ochre: #c9962e; --sv-ochre-d: #9c7322; --sv-body: #3a4552; --sv-muted: #5d6773;
	--sv-hair: rgba(43, 58, 74, .18);
	--sv-serif: "Cormorant Garamond", Garamond, Georgia, "Times New Roman", serif;
	--sv-sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
}

/* ── 01 · Hero: full-bleed house photo, neutral black overlay, white type, one ochre italic word ─ */
body.page-id-131 .ct2-hero-action .ct2-ha { min-height: clamp(520px, 72vh, 760px); }
body.page-id-131 .ct2-hero-action .ct2-ha-img { object-position: 50% 40%; }
body.page-id-131 .ct2-hero-action .ct2-ha-shade {
	opacity: 1 !important;
	background: linear-gradient(to top, rgba(0, 0, 0, .74) 0%, rgba(0, 0, 0, .28) 75%, rgba(0, 0, 0, .12) 100%), linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 65%) !important;
}
body.page-id-131 .ct2-hero-action .ct2-ha-copy { padding-bottom: clamp(64px, 7vw, 120px) !important; }
body.page-id-131 .ct2-hero-action .ct2-hero-eyebrow { color: #fff !important; }
body.page-id-131 .ct2-hero-action .ct2-hero-eyebrow::after { background: rgba(255, 255, 255, .7) !important; }
body.page-id-131 .ct2-hero-action .ct2-hero-title {
	color: #fff !important; font-size: clamp(56px, 7vw, 128px) !important; line-height: .95 !important;
	letter-spacing: -0.015em; margin: 0 !important; text-shadow: 0 1px 24px rgba(0, 0, 0, .25);
}
body.page-id-131 .ct2-hero-action .ct2-hero-title em { display: inline !important; color: var(--sv-ochre) !important; line-height: inherit; vertical-align: baseline; }
body.page-id-131 .ct2-hero-action .ct2-hero-title::after { display: none !important; content: none !important; }
body.page-id-131 .ct2-hero-action .ct2-hero-sentence {
	margin: clamp(22px, 2.4vw, 36px) 0 0 !important; max-width: 36ch;
	font-family: var(--sv-sans); font-size: clamp(18px, 1.35vw, 21px) !important; font-weight: 400; letter-spacing: 0; text-transform: none;
	line-height: 1.55 !important; color: rgba(255, 255, 255, .92) !important;
}

/* ── Shared section type ─────────────────────────────────────────────────────────────────── */
body.page-id-131 :is(.tk-sv-buy, .tk-sv-sell, .tk-sv-steps, .tk-sv-fees, .tk-sv-cta) .titles:not(.small-titles):not(.small):not(.medium) {
	font-family: var(--sv-serif) !important; font-weight: 300 !important; color: var(--sv-ink);
	font-size: clamp(40px, 4.6vw, 80px) !important; line-height: 1 !important; letter-spacing: -0.012em;
}
body.page-id-131 :is(.tk-sv-buy, .tk-sv-sell, .tk-sv-steps, .tk-sv-fees) .titles em { font-style: italic; color: var(--sv-ochre-d); }
body.page-id-131 :is(.tk-sv-buy, .tk-sv-sell, .tk-sv-steps, .tk-sv-fees, .tk-sv-cta) :is(a.button, img, .panel) { border-radius: 0 !important; }

/* ── 02 · Buying: note + ruled list left, a tall entry photo right ────────────────────────────── */
body.page-id-131 .tk-sv-buy .tk-sv-note { font-family: var(--sv-sans); font-size: 17px !important; line-height: 1.6; color: var(--sv-body); margin: 0 0 28px; max-width: 560px; }
body.page-id-131 .tk-sv-buy .small-titles { margin-bottom: 20px !important; }
body.page-id-131 .tk-sv-buy .titles:not(.small-titles) { margin-bottom: clamp(24px, 2.4vw, 36px) !important; }
body.page-id-131 .tk-sv-buy .image-wrapper-featured {
	aspect-ratio: 4 / 5; height: auto !important; padding: 0 !important; overflow: hidden; border-radius: 0 !important; background: var(--sv-linen);
}
body.page-id-131 .tk-sv-buy .image-wrapper-featured img {
	position: static !important; width: 100% !important; height: 100% !important; object-fit: cover; object-position: 50% 50%; border-radius: 0 !important;
}

/* ── 03 · Selling: one square photo, ruled list beside it ────────────────────────────────── */
body.page-id-131 .tk-sv-sell .relative > .left .image-wrapper-featured {
	aspect-ratio: 1 / 1; height: auto !important; padding: 0 !important; overflow: hidden; border-radius: 0 !important; background: var(--sv-linen);
}
body.page-id-131 .tk-sv-sell .relative > .left .image-wrapper-featured img {
	position: static !important; width: 100% !important; height: 100% !important; object-fit: cover; object-position: 50% 62%; border-radius: 0 !important;
}
body.page-id-131 .tk-sv-sell .small-titles { margin-bottom: 20px !important; }
body.page-id-131 .tk-sv-sell .titles:not(.small-titles) { margin-bottom: clamp(28px, 2.6vw, 40px) !important; }
body.page-id-131 .tk-sv-list { list-style: none; margin: 0 !important; padding: 0 !important; border-top: 1px solid var(--sv-hair); counter-reset: none; }
body.page-id-131 .tk-sv-list li {
	list-style: none; margin: 0 !important; padding: 18px 0 !important; border-bottom: 1px solid var(--sv-hair);
	display: grid; grid-template-columns: minmax(0, 15ch) minmax(0, 1fr); gap: 6px 28px; align-items: baseline;
}
body.page-id-131 .tk-sv-list li::before, body.page-id-131 .tk-sv-list li::marker { content: none !important; display: none !important; }
body.page-id-131 .tk-sv-list strong { font-family: var(--sv-serif); font-weight: 500; font-size: 23px; line-height: 1.15; color: var(--sv-ink); }
body.page-id-131 .tk-sv-list span { font-family: var(--sv-sans); font-size: 16.5px; line-height: 1.55; color: var(--sv-body); }

/* ── Photo bands: section photo under a neutral black overlay, content above it ──────────────── */
body.page-id-131 :is(.tk-sv-steps, .tk-sv-cta) { position: relative; isolation: isolate; overflow: hidden; background-color: #1c1c1c !important; background-image: none !important; }
body.page-id-131 :is(.tk-sv-steps, .tk-sv-cta)::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; }
body.page-id-131 :is(.tk-sv-steps, .tk-sv-cta) > .section { position: relative; z-index: 3; }

/* ── 04 · How it works: five steps on one hairline over a family-room photo, ochre numerals ───── */
body.page-id-131 .tk-sv-steps::before { background: linear-gradient(to top, rgba(0, 0, 0, .82) 0%, rgba(0, 0, 0, .72) 60%, rgba(0, 0, 0, .68) 100%); }
body.page-id-131 .tk-sv-steps { --sv-hair: rgba(255, 255, 255, .3); color: #fff; }
body.page-id-131 .tk-sv-steps .titles:not(.small-titles) { color: #fff !important; }
body.page-id-131 .tk-sv-steps .titles em { color: #fff !important; }
body.page-id-131 .tk-sv-steps .small-titles { color: #fff !important; }
body.page-id-131 .tk-sv-steps .small-titles::after { background: rgba(255, 255, 255, .7) !important; }
body.page-id-131 .tk-sv-steps .ct2-tl-horizontal {
	position: relative; display: grid; grid-auto-flow: row; grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0; overflow: visible; scroll-snap-type: none; padding: 0; border-top: 1px solid var(--sv-hair);
}
body.page-id-131 .tk-sv-steps .ct2-tl-horizontal::before { display: none; }
body.page-id-131 .tk-sv-steps .ct2-tl-dot { display: none; }
body.page-id-131 .tk-sv-steps .ct2-tl-item { padding: clamp(28px, 2.6vw, 40px) clamp(18px, 2vw, 32px) 0; border-left: 1px solid var(--sv-hair); }
body.page-id-131 .tk-sv-steps .ct2-tl-item:first-child { border-left: 0; padding-left: 0; }
body.page-id-131 .tk-sv-steps .ct2-tl-item:last-child { padding-right: 0; }
body.page-id-131 .tk-sv-steps .ct2-tl-marker {
	font-family: var(--sv-serif) !important; font-weight: 300; font-size: clamp(64px, 6vw, 104px) !important; line-height: .8;
	color: var(--sv-ochre) !important; opacity: 1 !important; letter-spacing: -0.02em; font-variant-numeric: lining-nums tabular-nums; margin: 0 0 clamp(22px, 2.2vw, 34px);
}
body.page-id-131 .tk-sv-steps .ct2-tl-body .titles {
	font-family: var(--sv-serif) !important; font-weight: 400 !important; font-size: clamp(24px, 1.8vw, 30px) !important; line-height: 1.1 !important;
	color: #fff !important; margin: 0 0 10px !important; letter-spacing: -0.005em;
}
body.page-id-131 .tk-sv-steps .ct2-tl-body p { font-family: var(--sv-sans); font-size: 16.5px !important; line-height: 1.6; color: rgba(255, 255, 255, .9) !important; margin: 0; }

/* ── 05 · About fees: room photo left (swaps with the open answer), ruled questions right ──────── */
body.page-id-131 .tk-sv-fees .ct2-accimg { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(48px, 7vw, 120px); align-items: start; }
body.page-id-131 .tk-sv-fees .ct2-ai-media { aspect-ratio: 4 / 5; border-radius: 0 !important; background: var(--sv-linen); top: 120px; }
body.page-id-131 .tk-sv-fees .ct2-ai-inline { border-radius: 0 !important; }
body.page-id-131 .tk-sv-fees .tk-sv-demo { font-family: var(--sv-sans); font-size: 14px !important; line-height: 1.5; color: var(--sv-muted); margin: 0; }
body.page-id-131 .tk-sv-fees .small-titles { margin-bottom: 20px !important; }
body.page-id-131 .tk-sv-fees .ct2-ai-list { border-top-color: var(--sv-hair); }
body.page-id-131 .tk-sv-fees .ct2-ai-item { border-bottom-color: var(--sv-hair); }
body.page-id-131 .tk-sv-fees .ct2-ai-item .titles { margin: 0 !important; }
body.page-id-131 .tk-sv-fees .ct2-ai-toggle {
	padding: clamp(20px, 1.8vw, 26px) 0; color: var(--sv-ink) !important;
	font-family: var(--sv-serif) !important; font-weight: 400; font-size: clamp(23px, 1.8vw, 29px) !important; line-height: 1.15; letter-spacing: -0.005em;
}
body.page-id-131 .tk-sv-fees .ct2-ai-toggle:focus-visible { outline: 2px solid var(--sv-ink); outline-offset: 4px; }
body.page-id-131 .tk-sv-fees .ct2-ai-panel { padding: 0 0 clamp(22px, 2vw, 28px); max-width: 60ch; }
body.page-id-131 .tk-sv-fees .ct2-ai-panel p { font-family: var(--sv-sans); font-size: 17.5px !important; line-height: 1.65; color: var(--sv-body); margin: 0; }

/* ── 06 · Questions first? Brick house photo, dark overlay, one ochre button, one quiet link ─── */
body.page-id-131 .tk-sv-cta::before { background: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .6) 60%, rgba(0, 0, 0, .5) 100%); }
body.page-id-131 .tk-sv-cta .bg-section-img { object-position: 50% 45%; }
body.page-id-131 .tk-sv-cta .overlay { display: none !important; }
body.page-id-131 .tk-sv-cta .titles:not(.small-titles) { color: #fff !important; font-size: clamp(48px, 5.6vw, 96px) !important; line-height: .98 !important; }
body.page-id-131 .tk-sv-cta .ct2-cta .titles span { opacity: 1 !important; }
body.page-id-131 .tk-sv-cta .titles em { font-style: italic; color: var(--sv-paper) !important; }
/* sentence, button, then the quiet link under the button */
body.page-id-131 .tk-sv-cta .ct2-cta { display: flex; flex-direction: column; align-items: center; }
body.page-id-131 .tk-sv-cta .ct2-cta :is(.ct2-head, .section_titles_width, .wysiwyg) { display: contents; }
body.page-id-131 .tk-sv-cta .ct2-cta .titles { order: 1; }
body.page-id-131 .tk-sv-cta .wysiwyg p { order: 2; max-width: 540px; margin: 0 auto; font-family: var(--sv-sans); font-size: 19px !important; line-height: 1.6; color: rgba(255, 255, 255, .86) !important; }
body.page-id-131 .tk-sv-cta .ct2-buttons { order: 3; margin-top: 40px !important; }
body.page-id-131 .tk-sv-cta .wysiwyg p.tk-sv-cta-alt { order: 4; margin-top: 22px; font-size: 16px !important; }
body.page-id-131 .tk-sv-cta .tk-sv-cta-alt a { color: #fff !important; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
body.page-id-131 .tk-sv-cta .tk-sv-cta-alt a:hover { text-decoration-thickness: 2px; }
body.page-id-131 .tk-sv-cta a.button.button-fourth-color { background: var(--sv-ochre) !important; border-color: var(--sv-ochre) !important; color: var(--sv-ink-d) !important; }
body.page-id-131 .tk-sv-cta a.button.button-fourth-color:hover { background: #fff !important; border-color: #fff !important; color: var(--sv-ink) !important; }
body.page-id-131 .tk-sv-cta a:focus-visible { outline: 2px solid #fff !important; outline-offset: 4px; }

/* ── Tablet ──────────────────────────────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
	body.page-id-131 .tk-sv-steps .ct2-tl-horizontal { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 40px; }
	body.page-id-131 .tk-sv-steps .ct2-tl-item:nth-child(3n + 1) { border-left: 0; padding-left: 0; }
}
@media (max-width: 900px) {
	body.page-id-131 .tk-sv-fees .ct2-accimg { grid-template-columns: 1fr; gap: 0; }
}
/* ── Phones: everything stacks ───────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
	body.page-id-131 .ct2-hero-type .ct2-hero-sentence { font-size: 18px !important; }
	body.page-id-131 .tk-sv-sell .relative > .left { margin-bottom: 40px; }
	body.page-id-131 .tk-sv-list li { grid-template-columns: 1fr; }
	body.page-id-131 .tk-sv-list strong { font-size: 22px; }
	body.page-id-131 .tk-sv-steps .ct2-tl-horizontal { grid-template-columns: 1fr; row-gap: 0; border-top: 0; }
	body.page-id-131 .tk-sv-steps .ct2-tl-item, body.page-id-131 .tk-sv-steps .ct2-tl-item:nth-child(n) {
		display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; align-items: baseline;
		border-left: 0; border-top: 1px solid var(--sv-hair); padding: 24px 0;
	}
	body.page-id-131 .tk-sv-steps .ct2-tl-item:last-child { border-bottom: 1px solid var(--sv-hair); }
	body.page-id-131 .tk-sv-steps .ct2-tl-marker { font-size: 52px !important; margin: 0; }
	body.page-id-131 .tk-sv-fees .ct2-ai-panel p { font-size: 17px !important; }
	body.page-id-131 .tk-sv-steps::before { background: rgba(0, 0, 0, .76); }
	body.page-id-131 .tk-sv-buy .div-within-section > .relative > .left { margin-bottom: 40px; }
	body.page-id-131 .tk-sv-buy .image-wrapper-featured { aspect-ratio: 4 / 3; }
	body.page-id-131 .tk-sv-cta .wysiwyg p { font-size: 18px !important; }
}

/* Selling: photo and list side by side on desktop (the layout's floats stack inside this band) */
@media (min-width: 768px) {
	body.page-id-131 .tk-sv-sell .div-within-section > .relative { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(48px, 7vw, 120px); align-items: center; }
	body.page-id-131 .tk-sv-sell .div-within-section > .relative > :is(.left, .right) { width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; padding: 0 !important; }
	body.page-id-131 .tk-sv-sell .div-within-section > .relative > .push { display: none; }
	body.page-id-131 .tk-sv-buy .div-within-section > .relative { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: clamp(48px, 7vw, 120px); align-items: center; }
	body.page-id-131 .tk-sv-buy .div-within-section > .relative > :is(.left, .right) { width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; padding: 0 !important; }
	body.page-id-131 .tk-sv-buy .div-within-section > .relative > .left { order: 2; }
	body.page-id-131 .tk-sv-buy .div-within-section > .relative > .push { display: none; }
}

