	body {
		overflow-x: hidden;
	}

	#hdr {
		z-index: 10;
		position: relative;
	}

	#simhosting {
		width: 100%;
		font-family: StemWebLight, 'Segoe UI', Arial, sans-serif;
		color: #222;
		font-size: 16px;
		line-height: 1.5;
	}

	#simhosting img {
		user-select: none;
		-moz-user-select: none;
		max-width: 380px;
		height: auto;
	}

	#simhosting .container {
		width: auto; /* перебиваем site.css */
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 20px 0 40px;
	}

	#simhosting h1, #simhosting h2, #simhosting h3 {
		font-weight: bold;
		line-height: 1.25;
		margin: 0 0 20px;
	}

	#simhosting h1 { font-size: 44px; }
	#simhosting h2 { font-size: 34px; }

	#simhosting .btn {
		display: inline-block;
		outline: none;
		border: 0;
		background: #7DC53F;
		color: white;
		font-family: inherit;
		line-height: 28px;
		cursor: pointer;
		text-decoration: none;
		transition: background 200ms;
		padding: 13px 28px !important;
		font-size: 18px;
		font-weight: bold;
		border-radius: 6px !important;
	}

	#simhosting .btn:hover {
		background: #72B634;
	}

	#simhosting .btn_c {
		text-align: center;
	}

	#simhosting .crumbs {
		padding: 14px 0 8px;
		font-size: 13px;
		color: #999;
	}

	#simhosting .crumbs a {
		color: #999;
		text-decoration: none;
	}

	#simhosting .crumbs a:hover {
		color: #0254A2;
	}

	/* ---------- hero ---------- */

	#simhosting .hero {
		display: flex;
		align-items: center;
		gap: 40px;
		padding: 20px 0 30px;
	}

	#simhosting .hero_txt {
		flex: 1 1 55%;
	}

	#simhosting .hero_txt p {
		margin: 0 0 14px;
		font-size: 17px;
		max-width: 540px;
	}

	#simhosting .hero_img {
		flex: 1 1 40%;
		text-align: center;
	}

	#simhosting .hero_img img {
		max-width: 420px;
	}

	#simhosting .chips {
		display: flex;
		gap: 28px;
		margin: 24px 0 28px;
	}

	#simhosting .chips span {
		border-left: 4px solid #8EC154;
		border-radius: 2px;
		padding: 4px 0 4px 12px;
		font-weight: bold;
		font-size: 15px;
	}

	/* ---------- описание (синяя диагональ) ---------- */

	#simhosting .desc {
		position: relative;
		color: #fff;
		padding: 110px 0 60px;
	}

	#simhosting .desc:before {
		content: '';
		position: absolute;
		top: 0; bottom: 0;
		left: calc(50% - 50vw);
		right: calc(50% - 50vw);
		background: #0E509E;
		clip-path: polygon(0 9%, 100% 0, 100% 100%, 0 100%);
	}

	#simhosting .desc h2,
	#simhosting .price h2 {
		color: white;
	}

	#simhosting .desc .container {
		position: relative;
	}

	#simhosting .desc_card {
		border: 1px solid rgba(255,255,255,.6);
		border-radius: 16px;
		padding: 36px 40px;
		display: flex;
		flex-direction: column;
		gap: 30px;
		margin-top: 30px;
	}

	#simhosting .desc_card > div {
		display: flex;
		align-items: center;
		gap: 30px;
	}

	#simhosting .desc_card > div + div {
		border-top: 1px solid rgba(255,255,255,.35);
		padding-top: 30px;
	}

	#simhosting .desc_card img {
		width: 90px;
		flex: none;
	}

	#simhosting .desc_card p {
		margin: 0;
		font-size: 15px;
	}

	/* ---------- карточка про размещение ---------- */

	#simhosting .place {
		padding: 60px 0 20px;
	}

	#simhosting .place_card {
		background: #fff;
		border-radius: 20px;
		box-shadow: 0 8px 40px rgba(60,80,110,.14);
		padding: 46px 55px;
		max-width: 860px;
		margin: 0 auto;
	}

	#simhosting .place_card h2 {
		text-align: center;
		font-size: 27px;
		margin-bottom: 34px;
	}

	#simhosting .place_card div {
		border-left: 3px solid #8EC154;
		padding: 6px 0 6px 16px;
		margin-bottom: 18px;
		font-size: 15px;
	}

	/* ---------- когда требуется ---------- */

	#simhosting .need {
		padding: 60px 0 20px;
	}

	#simhosting .need_intro {
		max-width: 560px;
		font-size: 15px;
	}

	#simhosting .need_grid {
		display: grid;
		grid-template-columns: 1fr 0.1fr 1fr;
		grid-auto-rows: auto;
		gap: 30px 10px;
		margin-top: 30px;
	}

	#simhosting .need_grid p {
		margin: 0;
		border-left: 3px solid #8EC154; /* базовый цвет — зелёный, синий переопределим ниже */
		padding: 6px 0 6px 16px;
		font-size: 15px;
		align-self: start;
	}

	#simhosting .need_grid .pic {
		text-align: center;
		align-self: start;
	}

	#simhosting .need_grid > p:nth-child(1) {
		grid-column: 1;
		grid-row: 1;
	}

	#simhosting .need_grid > .pic:nth-child(2) {
		grid-column: 3;
		grid-row: 1 / 3;
	}

	#simhosting .need_grid > p:nth-child(3) {
		grid-column: 1;
		grid-row: 2;
		margin-left: 100px;
		border-left-color: #1559AA; /* синяя палочка */
	}

	#simhosting .need_grid > p:nth-child(4) {
		grid-column: 1 / 4;
		grid-row: 3;
		margin-left: 260px;
	}

	#simhosting .need_grid > .pic:nth-child(5) {
		grid-column: 1;
		grid-row: 4 / 6;
		justify-self: start;
	}

	#simhosting .need_grid > p:nth-child(6) {
		grid-column: 2 / 4;
		grid-row: 4;
		margin-left: -60px;
		border-left-color: #1559AA; /* синяя палочка */
	}

	#simhosting .need_grid > p:nth-child(7) {
		grid-column: 2 / 4;
		grid-row: 5;
		margin-left: 90px;
	}


	#simhosting .need .btn_c {
		margin-top: 40px;
	}

	/* ---------- преимущества и выгоды ---------- */

	#simhosting .bene {
		padding: 70px 0 20px;
	}

	/* большая зеленая SIM-карта с желтыми ячейками-контактами */

	#simhosting .sim_card {
		background: #8EC154;
		border-radius: 70px;
		border-top-right-radius: 0;
		padding: 50px 210px 25px 60px;
		margin-top: 40px;
		position: relative;
		overflow: hidden;
	}

	#simhosting .sim_cut {
		position: absolute;
		top: 0;
		right: 0;
		pointer-events: none;
	}

	#simhosting .sim_grid {
		display: flex;
		gap: 7px;
		background: #444;
		border: 7px solid #444;
		border-radius: 50px;
		overflow: hidden;
	}

	#simhosting .sim_col {
		display: flex;
		flex-direction: column;
		gap: 7px;
	}

	#simhosting .sim_col { flex: 1.7; }

	#simhosting .sim_spacer {
		flex: 0.3;
		background: #FFE169;
	}

	#simhosting .sim_col > .sim_text {
		background: #FFE169;
		padding: 22px 26px;
		font-size: 14px;
	}

	#simhosting .sim_col b {
		display: block;
		margin-bottom: 4px;
	}

	#simhosting .sim_empty_row {
		display: flex;
		gap: 7px;
		background: none;
		padding: 0;
		flex: 1;
	}


	/* левые пустые ячейки — разной ширины */
	#simhosting .sim_col:first-child .sim_empty:nth-child(1) { flex: 0.7; }
	#simhosting .sim_col:first-child .sim_empty:nth-child(2) { flex: 1; }

	#simhosting .sim_col:last-child .sim_text:first-child {
		padding: 50px 26px;
	}

	/* правые пустые ячейки — тоже разной ширины (симметрично левым) */
	#simhosting .sim_col:last-child .sim_empty:nth-child(1) { flex: 1; }
	#simhosting .sim_col:last-child .sim_empty:nth-child(2) { flex: 0.7; }

	#simhosting .sim_empty {
		background: #FFE169;
		min-height: 78px;
	}

	#simhosting .sim_grid b {
		display: block;
		margin-bottom: 4px;
	}

	/* ---------- как работает ---------- */

	#simhosting .work {
		padding: 70px 0 20px;
		text-align: center;
	}

	#simhosting .work_row {
		display: flex;
		gap: 26px;
		justify-content: center;
		margin-top: 40px;
	}

	#simhosting .work_row > div {
		flex: 1 1 0;
		background: #fff;
		border-radius: 16px;
		box-shadow: 0 8px 30px rgba(60,80,110,.16);
		padding: 26px 22px 30px;
		font-size: 14px;
		text-align: left;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 16px;
		justify-content: center;
	}

	#simhosting .work_num {
		font-size: 56px;
		font-weight: bold;
		color: #8EC154;
		line-height: 1;
		flex: none;
		text-align: left;
		font-family: 'Stem', 'Arial';
	}

	#simhosting .work_row img {
		display: block;
		height: 110px;
		width: auto;
		margin: 0;
		flex: none;
	}

	#simhosting .work_row p {
		flex-basis: 100%;
		margin: 6px 0 0;
	}

	#simhosting .work_row b {
		display: block;
		margin-bottom: 6px;
	}

	/* ---------- кому подходит ---------- */

	#simhosting .who {
		padding: 70px 0 20px;
	}

	#simhosting .who_head {
		display: flex;
		align-items: center;
		gap: 40px;
	}

	#simhosting .who_head img {
		width: 130px;
		flex: none;
	}

	#simhosting .who_head p {
		font-size: 15px;
		margin: 0;
	}

	#simhosting .who_head h2 {
		text-align: center;
	}

	#simhosting .who_row {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0;
		margin-top: 40px;
	}

	#simhosting .who_row div {
		background: #8EC154;
		color: #fff;
		border-radius: 14px;
		padding: 26px 30px;
		text-align: center;
		font-size: 15px;
		flex: 0 1 300px;
	}

	#simhosting .who_row span {
		flex: 0 0 40px;
		height: 2px;
		background: #8EC154;
	}

	/* ---------- преимущества работы ---------- */

	#simhosting .sim_adv {
		padding: 70px 0 20px;
		text-align: center;
	}

	#simhosting .adv_grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 26px;
		margin-top: 40px;
		text-align: left;
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}

	#simhosting .adv_grid > div {
		background: #fff;
		border-radius: 16px;
		box-shadow: 0 8px 30px rgba(60,80,110,.16);
		padding: 15px 18px;
		display: flex;
		gap: 24px;
		align-items: flex-start;
		font-size: 14px;
	}

	#simhosting .adv_grid > div:nth-child(3),
	#simhosting .adv_grid > div:nth-child(4) {
		margin-left: 70px;
		margin-right: -70px;
	}

	#simhosting .adv_grid img {
		width: 110px;
		flex: none;
	}

	#simhosting .adv_grid b {
		display: block;
		margin-bottom: 8px;
		font-size: 15px;
	}

	/* ---------- стоимость ---------- */

	#simhosting .price {
		position: relative;
		color: #fff;
		padding: 60px 0 60px;
		margin-top: 50px;
		text-align: center;

	}

	#simhosting .price:before {
		content: '';
		position: absolute;
		top: 0; bottom: 0;
		left: calc(50% - 50vw);
		right: calc(50% - 50vw);
		background: #21549A;
	}

	#simhosting .price .container {
		position: relative;
	}

	#simhosting .price_row {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 40px 0;
	}

	#simhosting .price_labels,
	#simhosting .price_values {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 40px;
		text-align: center;
	}

	#simhosting .price_labels {
		font-weight: bold;
		font-size: 16px;
		padding-bottom: 20px;
		border-bottom: 1px solid rgba(255,255,255,0.4);
	}

	#simhosting .price_values {
		font-size: 15px;
		padding-top: 20px;
	}

	/* ---------- как начать ---------- */

	#simhosting .begin {
		padding: 70px 0 30px;
		text-align: center;
	}

	#simhosting .begin_row {
		display: flex;
		gap: 26px;
		justify-content: center;
		margin: 40px 0;
	}

	#simhosting .begin_row > div {
		flex: 1 1 0;
		background: #fff;
		border-radius: 16px;
		box-shadow: 0 8px 30px rgba(60,80,110,.16);
		padding: 26px 22px 30px;
		font-size: 14px;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 16px;
		text-align: left;
		justify-content: center;
	}

	#simhosting .begin_num {
		font-size: 56px;
		font-weight: bold;
		color: #8EC154;
		line-height: 1;
		flex: none;
		font-family: 'Stem', 'Arial';
	}

	#simhosting .begin_row img {
		display: block;
		height: 110px;
		width: auto;
		margin: 0;
		flex: none;
	}

	#simhosting .begin_row p {
		flex-basis: 100%;
		margin: 0;
	}

	/* ---------- FAQ ---------- */

	#simhosting .faq {
		padding: 40px 0 80px;
	}

	#simhosting .faq h2 {
		text-align: center;
		margin-bottom: 40px;
	}

	#simhosting .faq_item {
		margin: 0 0 20px;
		background: #fff;
		border-radius: 20px;
		box-shadow: 0 0 25px rgba(34,34,34,.1);
		overflow: hidden;
	}

	#simhosting .faq_q {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 20px;
		width: 100%;
		border: 0;
		background: none;
		font-family: 'StemWeb', 'Arial';
		font-size: 24px;
		font-weight: 500;
		text-align: left;
		padding: 20px 26px;
		cursor: pointer;
	}

	#simhosting .faq_q svg {
		flex: none;
		transition: transform 250ms;
	}

	#simhosting .faq_item.open .faq_q svg {
		transform: rotate(180deg);
	}

	#simhosting .faq_a {
		max-height: 0;
		overflow: hidden;
		transition: max-height 300ms;
	}

	#simhosting .faq_a p {
		margin: 0;
		padding: 0 20px 22px;
		color: #444;
	}

	#simhosting .faq .btn_c {
		margin-top: 40px;
	}

	/* ---------- адаптив ---------- */

	@media screen and (max-width: 1000px) {
		#simhosting h1 { font-size: 32px; }
		#simhosting h2 { font-size: 27px; }

		#simhosting .work_row,
		#simhosting .begin_row {
			flex-wrap: wrap;
		}

		#simhosting .work_row > div,
		#simhosting .begin_row > div { flex: 1 1 40%; }

		#simhosting .adv_grid { grid-template-columns: 1fr; }

		#simhosting .adv_grid > div:nth-child(3),
		#simhosting .adv_grid > div:nth-child(4) {
			margin-left: 0;
			margin-right: 0;
		}

		#simhosting .who_row { flex-direction: column; gap: 14px; }
		#simhosting .who_row span { display: none; }

		#simhosting .who_row div {
			flex: 0 1 auto;
			width: 100%;
			max-width: 400px;
			margin: 0 auto;
		}

		#simhosting .need_grid > p:nth-child(6) { margin-left: 0; }
	}

	@media screen and (max-width: 700px) {
		#simhosting h1 { font-size: 26px; }
		#simhosting h2 { font-size: 22px; }
		#simhosting { font-size: 15px; }

		#simhosting .hero {
			flex-direction: column;
			gap: 20px;
		}

		#simhosting .chips {
			flex-direction: column;
			gap: 12px;
		}

		#simhosting .desc { padding-top: 60px; }

		#simhosting .desc:before {
			clip-path: polygon(0 1.5%, 100% 0, 100% 100%, 0 100%);
		}

		#simhosting .desc_card {
			padding: 24px 20px;
		}

		#simhosting .desc_card > div {
			flex-direction: column;
			text-align: center;
			gap: 14px;
		}

		#simhosting .place_card { padding: 28px 24px; }

		#simhosting .hero_img img,
		#simhosting img { max-width: 300px}

		#simhosting .need_grid {
			grid-template-columns: 1fr;
			gap: 20px;
		}

		#simhosting .need_grid > * {
			grid-column: auto !important;
			grid-row: auto !important;
			margin-left: 0 !important;
		}

		#simhosting .need_grid > .pic:nth-child(5) { justify-self: center}

		#simhosting .sim_card {
			padding: 24px;
			border-radius: 26px;
		}

		#simhosting .sim_cut {
			display: none;
		}

		#simhosting .sim_grid {
			flex-direction: column;
		}

		#simhosting .sim_spacer { display: none; }

		#simhosting .sim_col { gap: 8px; }

		#simhosting .who_head { flex-direction: column; }

		#simhosting .adv_grid > div {
			flex-direction: column;
			text-align: center;
			align-items: center;
		}

		#simhosting .adv_grid b + * { text-align: left; }

		#simhosting .work_row > div,
		#simhosting .begin_row > div { flex: 1 1 100%; }

		#simhosting .price_row { gap: 24px; }

		#simhosting .faq_q {
			font-size: 15px;
			padding: 16px;
		}

		#simhosting .btn {
			font-size: 17px;
			padding: 13px 20px;
		}

		#simhosting .faq_a p { padding: 0 16px 18px; }

		#simhosting .work_row > div,
		#simhosting .begin_row > div {
			flex-direction: column;
			align-items: center;
			text-align: center;
		}

		#simhosting .work_row p,
		#simhosting .begin_row p { flex-basis: auto; }

		#simhosting .work_row img,
		#simhosting .begin_row img { height: 90px; margin: 0 auto; }
	}