@import "style-dv__fonts.min.css";@import "style-be__start.min.css";@import "style-dv__libraries.min.css";@import "style-dv__global.min.css";@import "style-dv__site.min.css";@import "style-dv__site_custom.min.css";@import "style-dv__site_adapt.min.css";@import "style-dv__site_mods.min.css";@import "style-dv__site_flex.min.css";@import "style-be__end.min.css";

/* Portfolio model: filters and optional project fields. */
.projects-filters {
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	padding-top: 28px;
	padding-bottom: 20px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

/* Portfolio cards: readable captions and a stable three-column desktop grid. */
.index-works-item-caption {
	background: rgba(24, 31, 38, .9) !important;
	padding: 18px 22px !important;
}
.index-works-item-caption-text {
	color: #fff !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}
.projects-grid-flat {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
}
.projects-grid-flat > .index-works-item-block {
	width: auto !important;
	max-width: none !important;
}
@media (max-width: 991px) {
	.projects-grid-flat { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.projects-grid-flat { grid-template-columns: 1fr; }
}
.projects-filters-item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid #d9d9d9;
	color: #242424;
	background: #fff;
	font-size: 14px;
	line-height: 1.25;
	white-space: nowrap;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
.projects-filters-item:hover,
.projects-filters-item:focus,
.projects-filters-item.is-active {
	border-color: #242424;
	background: #242424;
	color: #fff;
}
.projects-empty-state {
	padding-top: 48px;
	padding-bottom: 72px;
	font-size: 20px;
	text-align: center;
}
.projects-catalog {
	position: relative;
}
.projects-catalog.is-loading .projects-catalog-results {
	opacity: .42;
	pointer-events: none;
}
.projects-catalog-results {
	transition: opacity .18s ease;
}
.projects-catalog.is-loading::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 112px;
	width: 28px;
	height: 28px;
	margin-left: -14px;
	border: 2px solid rgba(36, 36, 36, .2);
	border-top-color: #242424;
	border-radius: 50%;
	animation: projects-catalog-spin .7s linear infinite;
}
@keyframes projects-catalog-spin {
	to { transform: rotate(360deg); }
}
.project-model-meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, max-content));
	gap: 8px;
}
.project-model-meta-item {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 7px 10px;
	border: 1px solid #dedede;
	background: #fff;
	font-size: 10px;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: .025em;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.project-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}
.project-metric {
	min-width: 0;
	min-height: 144px;
	padding: 22px 18px;
	border-top: 3px solid #242424;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .055);
}
.project-metric-value {
	font-size: clamp(24px, 2vw, 30px);
	line-height: 1.15;
	font-weight: 600;
	letter-spacing: -.025em;
	white-space: nowrap;
}
.project-metric-label {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.4;
}
.project-story-section h3 {
	margin: 0 0 18px;
	font-size: 25px;
	line-height: 1.2;
}
.project-story-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}
.project-story-section {
	padding: 28px;
	border: 1px solid #e0e0e0;
	background: #fff;
}
.project-story-section-solution {
	background: #242424;
	color: #fff;
}
.project-story-section-solution h3,
.project-story-section-solution .project-story-kicker,
.project-story-section-solution .projects-item-details-text,
.project-story-section-solution .projects-item-details-text p,
.project-story-section-solution .projects-item-details-text li {
	color: #fff !important;
}
.project-story-section-solution .projects-item-details-text {
	opacity: .86;
}
.project-story-kicker {
	margin-bottom: 28px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .09em;
	text-transform: uppercase;
	opacity: .62;
}
.project-gallery-after-story > .wrapper:first-child {
	margin-top: 0 !important;
	padding-top: 16px !important;
}
.project-gallery-after-story .index-block-header {
	margin-bottom: 28px !important;
}
@media (max-width: 767px) {
	.projects-filters {
		gap: 6px;
		padding-top: 24px;
		padding-bottom: 16px;
	}
	.projects-filters-item {
		width: auto;
		min-height: 38px;
		padding: 7px 11px;
		font-size: 13px;
	}
	.project-metrics {
		grid-template-columns: 1fr;
	}
	.project-model-meta {
		display: flex;
		flex-wrap: wrap;
	}
	.project-model-meta-item {
		min-height: 34px;
		white-space: normal;
	}
	.project-metric {
		min-height: 0;
	}
	.project-story-grid {
		grid-template-columns: 1fr;
	}
	.project-story-section {
		padding: 22px;
	}
}
/* Стили для SEO-текста */
.seo-text {
    max-width: 1200px; /* Добавим ограничение по ширине */
    margin: 0 auto; /* Центрирование контента */
    padding: 0 20px;
}

.seo-text h2 {
    font-size: 28px;
    color: #2A2A2A;
    margin: 40px 0 25px;
    padding-bottom: 15px;
    border-bottom: 2px solid #4CAF50;
    position: relative;
}

.seo-text h2:after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100px;
    height: 2px;
    background: #1E88E5;
}

.seo-text ul {
    list-style: none;
    padding-left: 30px;
    margin: 20px 0;
    line-height: 1.6;
}

.seo-text li {
    position: relative;
    margin-bottom: 15px;
    padding-left: 30px;
    font-size: 16px;
    color: #444;
}

.seo-text li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 12px;
    height: 12px;
    background: #4CAF50;
    border-radius: 50%;
    transform: translateY(-50%);
}

.seo-text ul:nth-of-type(even) li:before {
    background: #1E88E5;
    border-radius: 2px;
}

@media (max-width: 768px) {
    .seo-text h2 {
        font-size: 24px;
        margin: 30px 0 20px;
    }
    
    .seo-text li {
        font-size: 15px;
        padding-left: 25px;
    }
    
    .seo-text li:before {
        width: 10px;
        height: 10px;
        top: 7px;
    }
}

/* Portfolio redesign 2026-09: scoped to the active /projects/ templates. */
.portfolio-page-header { display:block!important; position:relative!important; min-height:0!important; padding-top:64px; background:#f5f7f8; border-bottom:1px solid #e3e7e9; }
.portfolio-page-breads { display:block!important; position:static!important; padding-top:18px; padding-bottom:24px; }
.portfolio-page-header .breads-inner { margin-bottom:10px!important; color:#6c787e; }
.portfolio-page-header .h1 { display:block!important; margin:0!important; padding:0!important; color:#1f292e; font-size:clamp(38px,5vw,64px); line-height:1.03; }
.projects-catalog { overflow:hidden; color:#20282d; background:#fff; }
html:has(.projects-catalog) .bottom-contacts { display:none; }
html:has(.projects-catalog) header[data-sticky] { color:#1f292e; background:rgba(255,255,255,.97); border-bottom:1px solid #e1e6e8; box-shadow:0 1px 8px rgba(24,39,46,.06); }
html:has(.projects-catalog) header[data-sticky] .logo-link-top,html:has(.projects-catalog) header[data-sticky] .top-tel,html:has(.projects-catalog) header[data-sticky] .top-menu-a { color:#1f292e; }
html:has(.projects-catalog) header[data-sticky] a[href^="tel:"],html:has(.projects-catalog) header[data-sticky] a[href^="tel:"] * { color:#1f292e!important; }
html:has(.projects-catalog) header[data-sticky] a,html:has(.projects-catalog) header[data-sticky] span,html:has(.projects-catalog) header[data-sticky] strong { color:#1f292e!important; }
html:has(.projects-catalog) header[data-sticky] .top-burger-line { background:#1f292e; }
html:has(.project-page-marker) .top-block-innerpage .breads-inner { display:table; width:auto; margin-bottom:12px; padding:7px 11px; background:rgba(19,31,37,.52); box-shadow:0 3px 16px rgba(0,0,0,.12); }
html:has(.project-page-marker) .top-block-innerpage .h1 { display:table; width:auto; max-width:680px; padding:10px 14px; background:rgba(19,31,37,.52); box-shadow:0 3px 18px rgba(0,0,0,.14); }
.projects-intro { padding-top:72px; padding-bottom:18px; }
.projects-breads { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 0 18px; padding-top:18px; color:#4f5e66; font-size:13px; font-weight:600; }
.projects-breads a { color:#35454d; text-decoration:none; }
.projects-breads a:hover,.projects-breads a:focus-visible { color:#178db9; }
.projects-intro h1 { margin:0 0 20px; color:#1f292e; font-size:clamp(42px,5.4vw,72px); line-height:1; }
.projects-intro-kicker,.projects-section-kicker { margin:0 0 10px; color:#2da8d8; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.projects-intro-text { max-width:880px; margin:0; color:#4c5a61; font-size:clamp(20px,2.1vw,32px); line-height:1.35; }
.projects-filters { display:flex; flex-wrap:wrap; gap:8px; padding-top:12px; padding-bottom:28px; }
.projects-filters-item { display:inline-flex; align-items:center; min-height:42px; padding:9px 15px; border:1px solid #d8e0e4; color:#243139; font-size:14px; text-decoration:none; transition:.2s ease; }
.projects-filters-item:hover,.projects-filters-item:focus-visible { border-color:#2da8d8; color:#167fa9; outline:none; }
.projects-filters-item.is-active { border-color:#20282d; color:#fff; background:#20282d; }
.projects-catalog.is-loading .projects-catalog-results { opacity:.45; pointer-events:none; }
.projects-catalog-results { transition:opacity .2s ease; }
.projects-section { padding-top:44px; padding-bottom:52px; }
.projects-section + .projects-section { border-top:1px solid #e6eaec; }
.projects-section-head { margin-bottom:24px; }
.projects-section-head h2,.projects-final-cta h2,.service-projects h2 { margin:0; color:#1f292e; font-size:clamp(27px,3vw,44px); line-height:1.08; }
.projects-section-head-row { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; }
.projects-section-note { max-width:480px; margin:0; color:#69757b; font-size:14px; line-height:1.55; }
.projects-featured-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.projects-featured-card { min-width:0; height:100%; background:#f2f5f6; }
.projects-featured-card-link { display:flex; flex-direction:column; height:100%; min-height:0; color:inherit; text-decoration:none; }
.projects-featured-card-media { position:relative; flex:0 0 290px; height:290px; min-height:290px; overflow:hidden; background:#dce4e7; }
.projects-featured-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.projects-featured-card-link:hover img { transform:scale(1.025); }
.projects-featured-card-index { position:absolute; top:16px; left:16px; padding:7px 9px; color:#fff; background:rgba(23,34,39,.78); font-size:12px; letter-spacing:.08em; }
.projects-featured-card-body { display:flex; flex:1 1 auto; flex-direction:column; min-height:285px; padding:28px; }
.projects-card-meta { display:flex; flex-wrap:wrap; gap:6px 10px; color:#627078; font-size:12px; line-height:1.35; }
.projects-card-meta span:not(:last-child):after { content:'\00b7'; margin-left:10px; color:#aeb7bb; }
.projects-featured-card h3 { margin:18px 0 24px; color:#172126; font-size:clamp(22px,2vw,31px); line-height:1.14; }
.projects-card-metrics { display:flex; flex-wrap:wrap; gap:18px; margin-top:auto; }
.projects-card-metrics span { display:flex; flex-direction:column; color:#6d787e; font-size:11px; }
.projects-card-metrics strong { color:#20282d; font-size:20px; line-height:1.1; }
.projects-card-more { margin-top:22px; color:#178db9; font-weight:700; }
.projects-featured-card.has-no-image .projects-featured-card-link { grid-template-columns:1fr; }
.projects-featured-card.has-no-image .projects-featured-card-media { min-height:120px; background:linear-gradient(135deg,#26343b,#47616d); }
.projects-work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:#dfe5e8; border:1px solid #dfe5e8; }
.projects-work-card { min-width:0; background:#fff; }
.projects-work-card > a { display:flex; flex-direction:column; min-height:330px; padding:25px; color:inherit; text-decoration:none; transition:.2s ease; }
.projects-work-card > a:hover,.projects-work-card > a:focus-visible { position:relative; z-index:1; outline:2px solid #2da8d8; outline-offset:-2px; background:#f7fafb; }
.projects-work-card-top { display:flex; justify-content:space-between; gap:18px; color:#2b9dcc; font-size:12px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.projects-work-arrow { font-size:22px; line-height:1; }
.projects-work-card h3 { margin:26px 0 12px; font-size:22px; line-height:1.22; }
.projects-work-card > a > p { margin:0 0 18px; color:#66737a; font-size:14px; line-height:1.55; }
.projects-work-facts { display:grid; gap:9px; margin:auto 0 0; }
.projects-work-facts div { display:grid; grid-template-columns:72px 1fr; gap:10px; }
.projects-work-facts dt { color:#8a959a; font-size:11px; text-transform:uppercase; }
.projects-work-facts dd { margin:0; color:#38454b; font-size:13px; }
.projects-work-docs { align-self:flex-start; margin-top:18px; padding:6px 9px; color:#167fa9; background:#e8f5fa; font-size:12px; font-weight:700; }
.projects-pagination { text-align:center; background:#fff; }
.projects-empty-state { margin-top:36px; margin-bottom:60px; padding:36px; color:#5d6a71; background:#f4f7f8; text-align:center; }
.projects-documents-grid,.project-documents-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.projects-document-card,.project-document-link { display:flex; align-items:flex-start; gap:18px; min-height:150px; padding:22px; border:1px solid #dae2e5; color:inherit; text-decoration:none; transition:.2s ease; }
.projects-document-card:hover,.project-document-link:hover { border-color:#2da8d8; background:#f7fbfc; }
.projects-document-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 46px; height:56px; color:#fff; background:#26363e; font-size:11px; font-weight:700; }
.projects-document-copy { display:flex; flex-direction:column; gap:6px; min-width:0; }
.projects-document-copy small { color:#2a9cca; font-size:11px; font-weight:700; text-transform:uppercase; }
.projects-document-copy strong { font-size:17px; line-height:1.3; }
.projects-document-copy span { color:#6a767c; font-size:13px; }
.projects-clients { background:#f5f7f8; }
.projects-clients-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; border:1px solid #dfe5e7; background:#dfe5e7; }
.projects-client-card { display:flex; flex-direction:column; min-height:125px; padding:21px; color:#243139; background:#fff; text-decoration:none; }
.projects-client-card strong { font-size:16px; line-height:1.3; }
.projects-client-card span { margin-top:10px; color:#6c787e; font-size:12px; line-height:1.45; }
a.projects-client-card:hover { color:#167fa9; background:#f7fbfc; }
.projects-geography { margin:22px 0 0; color:#647178; font-size:14px; }
.projects-final-cta { display:flex; align-items:center; justify-content:space-between; gap:42px; margin-top:52px; margin-bottom:58px; padding-top:42px; padding-bottom:42px; color:#fff; background:#26363e; }
.projects-final-cta h2 { color:#fff; }
.projects-final-cta p:not(.projects-section-kicker) { max-width:680px; margin:14px 0 0; color:#d5dde0; }
.projects-final-cta-actions { display:flex; align-items:center; gap:20px; flex:0 0 auto; }
.projects-phone { color:#fff; font-weight:700; white-space:nowrap; }
.project-documents { padding-top:30px; padding-bottom:70px; }
.service-projects { padding-top:58px; padding-bottom:58px; }
.service-projects-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.service-project-card { min-width:0; background:#f1f5f6; }
.service-project-card a { display:block; color:inherit; text-decoration:none; }
.service-project-card img { width:100%; height:240px; object-fit:cover; }
.service-project-card a > div { padding:21px; }
.service-project-card p { margin:0 0 10px; color:#2a99c6; font-size:11px; font-weight:700; text-transform:uppercase; }
.service-project-card h3 { margin:0 0 20px; font-size:20px; line-height:1.25; }
.service-project-card span,.service-projects-all { color:#177fa9; font-weight:700; text-decoration:none; }
.service-project-card.has-no-image a:before { content:''; display:block; height:120px; background:linear-gradient(135deg,#25343b,#58717c); }

/* Resource 115: private house design service. */
html:has(.house-service-page) .top-block-innerpage { min-height:480px; }
html:has(.house-service-page) .top-block-innerpage:after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(16,31,39,.72),rgba(16,31,39,.20) 67%,rgba(16,31,39,.10)); }
html:has(.house-service-page) .top-block-innerpage .breads,html:has(.house-service-page) .top-block-innerpage .top-header-right,html:has(.house-service-page) .top-block-innerpage .scroll-down-block { position:relative; z-index:1; }
html:has(.house-service-page) .top-block-servicepage { min-height:470px; overflow:visible!important; background-image:linear-gradient(90deg,rgba(16,31,39,.68),rgba(16,31,39,.20) 68%,rgba(16,31,39,.12)),url('/upload/images/projects/dvukhetazhnyy-dom-s-garazhom/visual-2.jpg')!important; background-position:center!important; background-size:cover!important; }
html:has(.house-service-page) .house-service-landing-title { margin:27px 0 0; color:#fff; font-size:clamp(42px,4.8vw,68px); line-height:1.02; }
html:has(.house-service-page) .top-block-servicepage .breads-inner,html:has(.house-service-page) .top-block-servicepage .breads-inner a,html:has(.house-service-page) .top-block-servicepage .breads-inner span { color:#fff!important; }
.house-service-page { overflow:hidden; color:#26343a; background:#fff; }
.house-service-page h2,.house-service-page h3 { color:#17242a; }
.house-service-hero-copy { padding:58px 0 46px; background:#172b35; color:#fff; }
.house-service-hero-copy-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:56px; align-items:end; }
.house-service-hero-copy p { max-width:760px; margin:0; font-size:22px; line-height:1.5; }
.house-service-hero-copy p + p { margin-top:18px; color:#c6d4da; font-size:16px; }
.house-service-actions { display:flex; flex-wrap:wrap; gap:12px; }
.house-service-button,.house-service-button-alt,.house-service-link { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:13px 20px; font-weight:700; text-decoration:none; transition:.2s ease; }
.house-service-button { color:#fff; background:#2fa9d8; }
.house-service-button:hover { color:#fff; background:#168fbd; }
.house-service-button-alt { color:#fff; border:1px solid rgba(255,255,255,.55); }
.house-service-button-alt:hover { color:#172b35; background:#fff; }
.house-service-nav { border-bottom:1px solid #dfe6e8; background:#fff; }
.house-service-nav .wrapper-inner { display:flex; gap:0; overflow:visible; }
.house-service-nav a { flex:0 0 auto; padding:18px 17px; color:#34444b; font-size:13px; font-weight:700; text-decoration:none; }
.house-service-nav a:hover { color:#168fbd; background:#f3f8fa; }
.house-service-section { padding:86px 0; }
.house-service-section:nth-of-type(even) { background:#f4f7f8; }
.house-service-heading { max-width:820px; margin-bottom:36px; }
.house-service-eyebrow { margin:0 0 12px; color:#269fce; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.house-service-heading h2,.house-service-split h2,.house-service-cta h2 { margin:0 0 20px; font-size:clamp(31px,3.8vw,54px); line-height:1.05; }
.house-service-heading > p:last-child,.house-service-split > div > p,.house-service-cta p { margin:0; color:#526269; font-size:18px; line-height:1.6; }
.house-service-cost { padding:66px 0; background:#e6f4f8; }
.house-service-cost-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.7fr); gap:62px; align-items:center; }
.house-service-cost blockquote,.house-service-split blockquote { margin:26px 0 0; padding:22px 24px; border-left:4px solid #2fa9d8; color:#1d3038; background:rgba(255,255,255,.55); font-size:18px; font-weight:700; line-height:1.5; }
.house-service-cost-aside { padding:32px; color:#fff; background:#203842; }
.house-service-cost-aside p { margin:0 0 22px; font-size:20px; line-height:1.42; }
.house-service-project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.house-service-project-card { min-width:0; background:#edf2f3; }
.house-service-project-card a { display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none; }
.house-service-project-card img { width:100%; height:240px; object-fit:cover; background:#d5e0e3; }
.house-service-project-copy { display:flex; flex:1; flex-direction:column; padding:22px; }
.house-service-project-copy h3 { margin:0 0 13px; font-size:23px; line-height:1.2; }
.house-service-project-copy p { display:flex; flex-wrap:wrap; gap:8px 14px; margin:0; color:#607078; font-size:13px; }
.house-service-project-copy p span + span:before { content:'·'; margin-right:14px; color:#a5b1b5; }
.house-service-project-more { margin-top:auto; padding-top:24px; color:#178ebc; font-weight:700; }
.house-service-project-more i { font-style:normal; }
.house-service-project-card a:hover img { filter:saturate(1.08); }
.house-service-project-card a:hover .house-service-project-more { color:#126f95; }
.house-service-more { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:26px; padding:26px 0 0; border-top:1px solid #d8e2e5; }
.house-service-more p { max-width:660px; margin:0; color:#5e6c72; line-height:1.55; }
.house-service-link { flex:0 0 auto; padding:0; color:#177fa9; }
.house-service-link:hover { color:#125f81; }
.house-service-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.house-service-panel { padding:38px; border:1px solid #dce5e7; background:#fff; }
.house-service-panel h3 { margin:0 0 13px; font-size:26px; }
.house-service-panel p { margin:0 0 22px; color:#56666d; line-height:1.55; }
.house-service-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.house-service-list li { position:relative; padding-left:20px; line-height:1.45; }
.house-service-list li:before { content:'+'; position:absolute; left:0; color:#249dcb; font-weight:700; }
.house-service-doc-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.house-service-doc-grid figure { margin:0; min-height:270px; overflow:hidden; background:#e7edef; }
.house-service-doc-grid img { display:block; width:100%; height:100%; object-fit:cover; }
.house-service-stages { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:1px; background:#d8e3e6; }
.house-service-stage { min-height:230px; padding:22px; background:#fff; }
.house-service-stage b { display:block; margin-bottom:35px; color:#2ca3d2; font-size:12px; letter-spacing:.1em; }
.house-service-stage h3 { margin:0 0 14px; font-size:18px; line-height:1.24; }
.house-service-stage p { margin:0; color:#5b6b71; font-size:14px; line-height:1.5; }
.house-service-build { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.85fr); gap:38px; align-items:stretch; }
.house-service-build-image { min-height:390px; background-position:center; background-size:cover; }
.house-service-build-copy { display:flex; flex-direction:column; justify-content:center; padding:42px; background:#203842; color:#fff; }
.house-service-build-copy h2 { color:#fff; }
.house-service-build-copy p { color:#d0dde1; }
.house-service-scenarios { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.house-service-scenario { display:flex; flex-direction:column; min-height:300px; padding:30px; border-top:4px solid #2fa9d8; background:#f2f6f7; }
.house-service-scenario h3 { margin:0 0 16px; font-size:25px; }
.house-service-scenario p { margin:0; color:#56666d; line-height:1.55; }
.house-service-scenario a { margin-top:auto; padding-top:24px; color:#168fbd; font-weight:700; text-decoration:none; }
.house-service-factors { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.house-service-factors span { padding:10px 13px; color:#28404a; background:#e5f1f5; font-size:14px; font-weight:700; }
.house-service-faq { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.house-service-faq details { padding:21px 22px; background:#fff; border:1px solid #dce5e7; }
.house-service-faq summary { cursor:pointer; color:#20363e; font-weight:700; line-height:1.4; }
.house-service-faq p { margin:16px 0 0; color:#596a70; line-height:1.55; }
.house-service-cta { padding:84px 0; color:#fff; background:#1a323d; }
.house-service-cta h2 { color:#fff; }
.house-service-cta p { max-width:790px; color:#cfdee2; }
.house-service-cta .house-service-actions { margin-top:28px; }
@media (max-width:1199px) { .house-service-stages { grid-template-columns:repeat(4,minmax(0,1fr)); } .house-service-project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) { html:has(.house-service-page) .top-block-innerpage { min-height:360px; } html:has(.house-service-page) .top-block-servicepage { display:block!important; min-height:410px!important; } html:has(.house-service-page) .top-block-servicepage .top-header-right { display:none!important; } html:has(.house-service-page) .top-block-servicepage .breads { width:calc(100vw - 48px)!important; max-width:calc(100vw - 48px)!important; padding-right:0!important; } html:has(.house-service-page) .top-block-servicepage .h1 { width:100%!important; max-width:100%!important; font-size:31px!important; line-height:1.08!important; white-space:normal!important; overflow-wrap:normal!important; } html:has(.house-service-page) .top-block-servicepage .breads-inner { max-width:100%!important; font-size:11px!important; line-height:1.35!important; } .house-service-nav .wrapper-inner { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:none; } .house-service-nav .wrapper-inner::-webkit-scrollbar { display:none; } .house-service-hero-copy,.house-service-section,.house-service-cta { padding-top:48px; padding-bottom:48px; } .house-service-hero-copy-grid,.house-service-cost-grid,.house-service-split,.house-service-build,.house-service-scenarios,.house-service-faq { grid-template-columns:1fr; gap:18px; } .house-service-cost-aside,.house-service-build-copy,.house-service-panel,.house-service-scenario { padding:25px; } .house-service-project-grid,.house-service-doc-grid { grid-template-columns:1fr; } .house-service-project-card img { height:230px; } .house-service-more { display:block; } .house-service-more .house-service-link { margin-top:18px; } .house-service-stages { grid-template-columns:1fr; } .house-service-stage { min-height:0; } .house-service-stage b { margin-bottom:18px; } }

/* Resource 122: Orthodox church design service. */
html:has(.temple-service-page) .top-block-servicepage { background-image:linear-gradient(90deg,rgba(16,31,39,.72),rgba(16,31,39,.18) 70%,rgba(16,31,39,.10)),url('/upload/images/projects/temples/korsun/korsun-visual-20260923.jpg')!important; background-position:center!important; }
.temple-service-page .house-service-hero-copy-grid { align-items:center; }
.temple-service-page .house-service-hero-copy-grid > .house-service-actions { align-self:center; transform:translateY(-18px); }
.temple-service-page .service-projects { padding-top:86px; padding-bottom:86px; }
.temple-service-proof-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-top:34px; background:#49616b; }
.temple-service-proof-grid span { min-height:104px; padding:25px; color:#fff; background:#203842; font-weight:700; line-height:1.4; }
.temple-service-meetings { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; width:100%; max-width:1200px; margin:0 auto; }
.temple-service-meetings figure { margin:0; background:#eef3f4; }
.temple-service-meetings img { display:block; width:100%; height:310px; object-fit:cover; object-position:center top; }
.temple-service-meetings figcaption { padding:20px 22px; color:#4f626a; line-height:1.5; }
.temple-form-status { margin-top:12px; padding:11px 14px; color:#24404b; background:#e8f3f6; line-height:1.4; }
.temple-form-status.is-error { color:#7a2020; background:#f8e8e8; }
.temple-service-quote { padding:46px; color:#fff; background:#203842; }
.temple-service-quote blockquote { margin:0 0 18px; color:#fff; font-size:clamp(27px,3vw,43px); font-weight:700; line-height:1.16; }
.temple-service-quote p { margin:0; color:#cbd9de; line-height:1.6; }
.temple-service-regions { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.temple-service-regions span { padding:10px 14px; background:#e5f1f5; color:#28404a; font-weight:700; }
@media (max-width:991px) { .temple-service-proof-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .temple-service-meetings { grid-template-columns:repeat(2,minmax(0,1fr)); } .temple-service-meetings img { height:280px; } }
@media (max-width:767px) { .temple-service-page .house-service-hero-copy-grid > .house-service-actions { transform:none; } .temple-service-page .service-projects { padding-top:48px; padding-bottom:48px; } .temple-service-proof-grid,.temple-service-meetings { grid-template-columns:1fr; } .temple-service-meetings { max-width:430px; } .temple-service-meetings img { height:auto; max-height:520px; } .temple-service-quote { padding:27px; } }

@media (max-width:1199px) {
	.projects-featured-card-media { flex-basis:260px; height:260px; min-height:260px; }
	.projects-work-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.projects-clients-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:767px) {
	.portfolio-page-breads { padding-top:16px; padding-bottom:20px; }
	.portfolio-page-header .breads-inner { display:none; }
	.portfolio-page-header .h1 { font-size:36px; }
	.projects-intro { padding-top:26px; }
	.projects-breads { margin-bottom:14px; }
	.projects-intro h1 { margin-bottom:18px; font-size:40px; }
	.projects-filters { flex-wrap:nowrap; overflow-x:auto; padding-bottom:20px; scrollbar-width:thin; }
	.projects-filters-item { flex:0 0 auto; white-space:nowrap; }
	.projects-section { padding-top:34px; padding-bottom:38px; }
	.projects-section-head-row { display:block; }
	.projects-section-note { margin-top:12px; }
	.projects-featured-grid,.projects-work-grid,.projects-documents-grid,.project-documents-grid,.service-projects-grid { grid-template-columns:1fr; }
	.projects-featured-card-link { min-height:0; }
	.projects-featured-card-media { flex-basis:230px; height:230px; min-height:230px; }
	.projects-featured-card-body { min-height:0; padding:22px; }
	.projects-work-card > a { min-height:280px; }
	.projects-clients-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.projects-final-cta { display:block; margin-top:34px; margin-bottom:36px; padding-top:32px; padding-bottom:32px; }
	.projects-final-cta-actions { align-items:flex-start; flex-direction:column; margin-top:24px; }
	.service-projects-all { display:inline-block; margin-top:16px; }
}
@media (max-width:420px) {
	.projects-clients-grid { grid-template-columns:1fr; }
	.projects-client-card { min-height:0; }
	.projects-intro-text { font-size:19px; }
	.projects-work-card h3 { font-size:20px; }
}
