/*
Theme Name: Woostify Child
Theme URI: https://woostify.com/
Description: Child theme for Woostify used in monter4you.
Author: monter4you
Template: woostify
Version: 1.0.0
Text Domain: woostify-child
*/

body,
button,
input,
select,
textarea,
p,
li,
summary,
a,
span,
label {
	font-family: 'Mulish', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading,
.entry-title,
.site-title,
.widget-title,
.comment-reply-title {
	font-family: 'Gotu', sans-serif;
}

.entry-content > * {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.entry-content {
	padding-left: 16px;
	padding-right: 16px;
	padding-bottom: 0 !important;
}

/* Remove any bottom margin/padding that creates a gray strip after the last block */
.entry-content > *:last-child,
.hentry,
.site-main {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* Ensure CTA cover stretches fully with no gaps */
.m4y-cta-band {
	margin-bottom: 0 !important;
}

@media (max-width: 767px) {
	.entry-content {
		padding-left: 12px;
		padding-right: 12px;
	}
}

:root {
	--m4y-accent: #2f66f3;
	--m4y-accent-hover: #2959d8;
	--m4y-header-bg: rgba( 18, 18, 20, 0.92 );
	--m4y-header-height: 80px;
}

button,
input[type='button'],
input[type='submit'],
input[type='reset'],
.button,
.added_to_cart,
.wp-block-button__link,
.wc-block-components-button,
.wc-forward {
	background-color: var(--m4y-accent);
	border: 1px solid var(--m4y-accent);
	border-radius: 3px;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.2;
	min-height: 44px;
	padding: 12px 28px;
	text-transform: uppercase;
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

button:hover,
button:focus,
input[type='button']:hover,
input[type='button']:focus,
input[type='submit']:hover,
input[type='submit']:focus,
input[type='reset']:hover,
input[type='reset']:focus,
.button:hover,
.button:focus,
.added_to_cart:hover,
.added_to_cart:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wc-block-components-button:hover,
.wc-block-components-button:focus,
.wc-forward:hover,
.wc-forward:focus {
	background-color: var(--m4y-accent-hover);
	border-color: var(--m4y-accent-hover);
	color: #fff;
}

#masthead,
.site-header {
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 9999;
	box-shadow: 0 8px 24px rgba( 0, 0, 0, 0.24 );
}

body.admin-bar #masthead,
body.admin-bar .site-header {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar #masthead,
	body.admin-bar .site-header {
		top: 46px;
	}
}

#masthead,
.site-header {
	background: var(--m4y-header-bg);
	transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

#masthead a,
.site-header a,
#masthead .menu-item > a,
.site-header .menu-item > a {
	color: #fff;
}

.site-content {
	margin: 0 !important;
}



.m4y-hero {
	align-items: center;
	background-image: none !important;
	box-sizing: border-box;
	clip-path: inset(0);
	color: #fff;
	display: flex;
	justify-content: center;
	left: 50%;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	max-height: 660px;
	max-width: 100vw !important;
	min-height: 660px !important;
	padding: clamp(72px, 12vw, 140px) 16px;
	position: relative;
	right: 50%;
	text-align: center;
	width: 100vw !important;
	z-index: 0;
}

.m4y-hero::before {
	background-image: var(--m4y-hero-bg-image, none);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	content: '';
	inset: -15%;
	position: absolute;
	transform: translate3d(0, var(--m4y-hero-parallax-y, 0px), 0) scale(1.18);
	will-change: transform;
	z-index: -2;
}

.m4y-hero::after {
	background: linear-gradient(
		180deg,
		rgba( 0, 0, 0, 0.36 ) 0%,
		rgba( 0, 0, 0, 0.5 ) 100%
	);
	content: '';
	inset: 0;
	position: absolute;
	z-index: -1;
}

.m4y-hero > * {
	max-width: 920px;
	position: relative;
	width: 100%;
	z-index: 2;
}

.m4y-hero h1,
.m4y-hero h2 {
	font-size: clamp(34px, 5.2vw, 78px);
	font-weight: 400;
	line-height: 1.08;
	margin-bottom: 22px;
	text-transform: uppercase;
}

.m4y-hero p {
	font-size: 17px;
	line-height: 1.6;
	margin-left: auto;
	margin-right: auto;
	max-width: 780px;
}

.m4y-hero .wp-block-buttons {
	justify-content: center;
}

.m4y-hero .wp-block-button__link {
	padding: 18px 48px;
}

.m4y-hero .wp-block-cover__image-background,
.m4y-hero .wp-block-cover__background,
.m4y-hero .wp-block-cover__gradient-background {
	opacity: 0 !important;
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	.m4y-hero::before {
		transform: none;
	}
}

/* ── Services section ──────────────────────────────────────── */

.m4y-section {
	padding: 88px 0;
}

.m4y-section-heading {
	font-size: clamp(26px, 3vw, 44px);
	font-weight: 400;
	letter-spacing: 0.1em;
	margin-bottom: 56px !important;
	position: relative;
	text-transform: uppercase;
}

.m4y-section-heading::before {
	background: var(--m4y-accent);
	content: '';
	display: block;
	height: 4px;
	margin: 0 auto 20px;
	width: 64px;
}

.m4y-cards-grid {
	display: grid !important;
	flex-wrap: unset !important;
	gap: 28px !important;
	grid-template-columns: repeat(3, 1fr) !important;
}

.m4y-cards-grid > .wp-block-column {
	flex: none !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.m4y-cards-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 480px) {
	.m4y-cards-grid {
		grid-template-columns: 1fr !important;
	}
}

.m4y-service-card {
	border-radius: 6px;
	box-shadow: 0 2px 14px rgba( 0, 0, 0, 0.08 );
	overflow: hidden;
	padding: 0 !important;
	position: relative;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.m4y-service-card:hover {
	box-shadow: 0 10px 32px rgba( 0, 0, 0, 0.14 );
	transform: translateY(-5px);
}

.m4y-card-photo {
	aspect-ratio: 3 / 2;
	display: block;
	margin: 0 !important;
	overflow: hidden;
	width: 100%;
}

.m4y-card-photo img {
	animation: m4y-ken-burns 9s ease-in-out infinite alternate;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
	will-change: transform;
}

@keyframes m4y-ken-burns {
	0%   { transform: scale(1)    translate(0%,   0%  ); }
	100% { transform: scale(1.12) translate(-3%,  -2% ); }
}

.m4y-service-card h3 {
	font-family: 'Mulish', sans-serif;
	font-size: 17px;
	font-weight: 700;
	margin: 20px 20px 8px !important;
}

.m4y-service-card h3 a {
	color: inherit;
	text-decoration: none;
}

/* Całe karty są klikalnie przez overlay z linku w h3 */
.m4y-service-card h3 a::after {
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.m4y-service-card > .wp-block-group__inner-container > p,
.m4y-service-card p {
	color: #555;
	font-size: 15px;
	line-height: 1.65;
	margin: 0 20px 20px !important;
	max-width: none;
}

@media (prefers-reduced-motion: reduce) {
	.m4y-card-photo img { animation: none; }
}

/* ── Gallery page ──────────────────────────────────────────── */

.m4y-gallery-section {
	padding-top: 72px;
	padding-bottom: 88px;
}

.m4y-gallery.wp-block-gallery {
	display: grid !important;
	gap: 10px !important;
	grid-template-columns: repeat(3, 1fr);
	max-width: none !important;
	width: 100% !important;
}

.m4y-gallery.wp-block-gallery .wp-block-image {
	margin: 0 !important;
	width: 100% !important;
}

.m4y-gallery.wp-block-gallery .wp-block-image figure,
.m4y-gallery.wp-block-gallery figure.wp-block-image {
	margin: 0 !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.m4y-gallery.wp-block-gallery {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.m4y-gallery.wp-block-gallery {
		grid-template-columns: 1fr;
	}
}

.m4y-gallery figure.wp-block-image {
	margin: 0 !important;
	overflow: hidden;
	border-radius: 4px;
}

.m4y-gallery figure.wp-block-image a {
	display: block;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.m4y-gallery figure.wp-block-image img {
	aspect-ratio: 3 / 2;
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
	width: 100%;
}

.m4y-gallery figure.wp-block-image a:hover img {
	transform: scale(1.05);
}

/* ── Benefits band ─────────────────────────────────────────── */

.m4y-benefits-band {
	padding: 72px 24px;
}

.m4y-benefits-band .wp-block-columns {
	align-items: flex-start;
	gap: 0;
	position: relative;
}

/* Łącząca linia pozioma pomiędzy kółkami */
.m4y-benefits-band .wp-block-columns::before {
	background: var(--m4y-accent);
	content: '';
	height: 2px;
	left: 16.67%;
	position: absolute;
	right: 16.67%;
	top: 27px; /* połowa wysokości kółka (56px / 2 - 1px) */
	z-index: 0;
}

.m4y-benefits-band .wp-block-column {
	position: relative;
	z-index: 1;
}

.m4y-benefits-band .m4y-benefit-item {
	align-items: center;
	display: flex !important;
	flex-direction: column;
	padding: 0 16px !important;
	text-align: center;
}

/* Kółko z ptaszkiem */
.m4y-benefits-band .m4y-check {
	align-items: center;
	background: var(--m4y-accent);
	border-radius: 50%;
	color: #fff;
	display: flex !important;
	font-size: 20px;
	font-weight: 700;
	height: 56px;
	justify-content: center;
	line-height: 1;
	margin: 0 auto 28px !important;
	position: relative;
	width: 56px;
	z-index: 1;
}

.m4y-benefits-band h3 {
	font-family: 'Mulish', sans-serif;
	font-size: 17px;
	font-weight: 700;
	margin-bottom: 10px;
}

.m4y-benefits-band .m4y-benefit-item > p:not(.m4y-check) {
	color: #555;
	font-size: 15px;
	line-height: 1.65;
	margin: 0 auto;
	max-width: 240px;
}

/* ═══════════════════════════════════════════════════════════
   FAQ SECTION
═══════════════════════════════════════════════════════════ */
.m4y-faq-section {
	padding: 80px 0 90px;
}

.m4y-faq-section > .wp-block-heading {
	font-size: clamp(28px, 4vw, 42px);
	font-weight: 800;
	margin-bottom: 48px;
	padding-left: 0;
	position: relative;
}

.m4y-faq-section > .wp-block-heading::before {
	background: var(--m4y-accent, #2563eb);
	content: '';
	display: block;
	height: 4px;
	margin-bottom: 14px;
	width: 40px;
}

.m4y-faq-section > .wp-block-columns {
	align-items: flex-start;
	gap: 60px !important;
}

.m4y-faq-item {
	border-bottom: 1px solid #e8e8e8;
	padding: 22px 0;
}

.m4y-faq-item:first-child {
	padding-top: 0;
}

.m4y-faq-item h4.wp-block-heading {
	font-size: 17px;
	font-weight: 700;
	margin-bottom: 10px !important;
}

.m4y-faq-item > p {
	color: #555;
	font-size: 15px;
	line-height: 1.72;
	margin: 0 !important;
}

.m4y-faq-image figure.wp-block-image img {
	border-radius: 6px;
	height: 520px;
	object-fit: cover;
	width: 100%;
}

@media (max-width: 767px) {
	.m4y-faq-section > .wp-block-columns {
		flex-direction: column;
	}

	.m4y-faq-image {
		display: none;
	}
}

/* ═══════════════════════════════════════════════════════════
   CTA PARALLAX BAND
═══════════════════════════════════════════════════════════ */
.m4y-cta-band {
	max-height: 360px;
	min-height: 320px !important;
}

.m4y-cta-band .wp-block-cover__image-background {
	object-position: center 60% !important;
}

.m4y-cta-band .wp-block-cover__inner-container {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.m4y-cta-band h2.wp-block-heading {
	font-size: clamp(20px, 3vw, 34px);
	font-weight: 700;
	letter-spacing: -0.01em;
	margin-bottom: 28px !important;
	text-align: center;
}

.m4y-cta-band .wp-block-button__link {
	background: var(--m4y-accent, #2563eb) !important;
	border: none;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 14px 36px;
	text-transform: uppercase;
}

.m4y-cta-band .wp-block-button__link:hover {
	background: #1d4ed8 !important;
	filter: none;
}
}
/* ═══════════════════════════════════════════════════════════
   FOOTER — CONTACT BAR
═══════════════════════════════════════════════════════════ */
#colophon.site-footer {
background: #111 !important;
border-top: none !important;
padding: 0 !important;
}

#colophon.site-footer .woostify-container {
padding-top: 0 !important;
padding-bottom: 0 !important;
}

.m4y-footer-contacts {
align-items: center;
display: flex;
flex-wrap: wrap;
gap: 0 48px;
justify-content: center;
padding: 22px 20px;
}

.m4y-footer-contact {
align-items: center;
color: #fff;
display: flex;
font-size: 15px;
font-weight: 500;
gap: 10px;
letter-spacing: 0.01em;
line-height: 1.2;
text-decoration: none !important;
transition: opacity 0.2s;
}

.m4y-footer-contact:hover {
opacity: 0.8;
}

.m4y-footer-icon {
color: var(--m4y-accent, #2563eb);
display: flex;
flex-shrink: 0;
}

.m4y-footer-icon svg {
height: 18px;
width: 18px;
}

.m4y-footer-name {
color: #fff;
}

.m4y-footer-sep {
color: #fff;
}

.m4y-footer-value {
color: var(--m4y-accent, #2563eb);
}

@media (max-width: 600px) {
.m4y-footer-contacts {
flex-direction: column;
gap: 16px;
}
}

/* ═══════════════════════════════════════════════════════════
   MOBILE SIDEBAR MENU — push below fixed header
═══════════════════════════════════════════════════════════ */
.sidebar-menu {
top: var(--m4y-header-height, 80px) !important;
}

body.admin-bar .sidebar-menu {
top: calc(var(--m4y-header-height, 80px) + 46px) !important;
}

@media (min-width: 783px) {
body.admin-bar .sidebar-menu {
top: calc(var(--m4y-header-height, 80px) + 32px) !important;
}
}

/* ═══════════════════════════════════════════════════════════
   O NAS — INFO SECTION
═══════════════════════════════════════════════════════════ */
.m4y-about-intro {
max-width: 860px !important;
margin-left: auto !important;
margin-right: auto !important;
}

.m4y-about-lead {
font-size: 19px !important;
font-weight: 600 !important;
color: var(--m4y-dark, #12171e) !important;
line-height: 1.6 !important;
margin-bottom: 28px !important;
padding-left: 20px !important;
border-left: 4px solid var(--m4y-accent, #2563eb) !important;
}

.m4y-about-intro p {
color: #444 !important;
font-size: 16px !important;
line-height: 1.8 !important;
}

/* ═══════════════════════════════════════════════════════════
   O NAS — STATS BAND
═══════════════════════════════════════════════════════════ */
.m4y-stats-band {
background: var(--m4y-dark, #12171e);
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 0;
padding: 64px 24px;
margin-left: -50vw;
margin-right: -50vw;
left: 50%;
right: 50%;
position: relative;
width: 100vw;
}

.m4y-stat {
	align-items: baseline;
	border-right: 1px solid rgba(255,255,255,0.1);
	display: flex;
	flex-flow: row wrap;
	flex: 1 1 200px;
	gap: 0 4px;
	justify-content: center;
	padding: 24px 48px;
	text-align: center;
}

.m4y-stat:last-child {
border-right: none;
}

.m4y-stat-number {
color: var(--m4y-accent, #2563eb);
display: inline;
font-size: clamp(48px, 6vw, 80px);
font-weight: 700;
letter-spacing: -0.02em;
line-height: 1;
}

.m4y-stat-suffix {
color: var(--m4y-accent, #2563eb);
font-size: clamp(32px, 4vw, 52px);
font-weight: 700;
letter-spacing: -0.02em;
line-height: 1;
}

.m4y-stat-label {
	color: rgba(255,255,255,0.7);
	flex-basis: 100%;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.06em;
	margin-top: 10px;
	text-align: center;
	text-transform: uppercase;
}

@media (max-width: 600px) {
.m4y-stat {
border-right: none;
border-bottom: 1px solid rgba(255,255,255,0.1);
padding: 28px 24px;
flex-basis: 100%;
}

.m4y-stat:last-child {
border-bottom: none;
}
}

/* ═══════════════════════════════════════════════════════════
   O NAS — VALUE CARDS & REVIEW CARDS
═══════════════════════════════════════════════════════════ */
.m4y-value-card,
.m4y-review-card {
background: #f7f8fa;
border-radius: 6px;
border-top: 3px solid var(--m4y-accent, #2563eb);
height: 100%;
padding: 32px 28px !important;
}

.m4y-value-card h3,
.m4y-review-card h3 {
font-size: 17px;
font-weight: 700;
margin-bottom: 12px;
}

.m4y-review-card p {
color: #555;
font-style: italic;
line-height: 1.7;
}

.m4y-review-card p strong {
color: var(--m4y-dark, #12171e);
font-style: normal;
}

/* ═══════════════════════════════════════════════════════════
   OFERTA — OFFER ROWS
═══════════════════════════════════════════════════════════ */
.m4y-offer-list {
margin: 0 auto;
max-width: 1160px;
padding: 72px 24px 88px;
}

.m4y-offer-row {
align-items: center;
border-bottom: 1px solid #e8eaed;
display: flex;
gap: 64px;
padding: 64px 0;
}

.m4y-offer-row:first-child {
padding-top: 0;
}

.m4y-offer-row:last-child {
border-bottom: none;
padding-bottom: 0;
}

.m4y-offer-row--reverse {
flex-direction: row-reverse;
}

.m4y-offer-row__image {
border-radius: 6px;
flex-shrink: 0;
height: 340px;
overflow: hidden;
width: 420px;
}

.m4y-offer-row__image img {
height: 100%;
object-fit: cover;
transition: transform 0.5s ease;
width: 100%;
}

.m4y-offer-row:hover .m4y-offer-row__image img {
transform: scale(1.04);
}

.m4y-offer-row__body {
flex: 1;
min-width: 0;
}

.m4y-offer-row__accent {
background: var(--m4y-accent, #2563eb);
height: 3px;
margin-bottom: 20px;
width: 36px;
}

.m4y-offer-row__title {
color: var(--m4y-dark, #12171e);
font-size: clamp(22px, 2.8vw, 32px);
font-weight: 700;
letter-spacing: -0.01em;
margin-bottom: 10px !important;
text-transform: uppercase;
}

.m4y-offer-row__desc {
color: #555;
font-size: 16px;
line-height: 1.8;
margin-bottom: 28px !important;
}

.m4y-offer-row__btn {
background: var(--m4y-accent, #2563eb);
border-radius: 4px;
color: #fff !important;
display: inline-block;
font-size: 13px;
font-weight: 700;
letter-spacing: 0.08em;
padding: 12px 28px;
text-decoration: none !important;
text-transform: uppercase;
transition: background 0.2s;
}

.m4y-offer-row__btn:hover {
background: #1d4ed8;
color: #fff !important;
}

@media (max-width: 860px) {
.m4y-offer-row,
.m4y-offer-row--reverse {
flex-direction: column;
gap: 32px;
padding: 48px 0;
}

.m4y-offer-row__image {
height: 240px;
width: 100%;
}
}

/* =========================================================
   REALIZACJE — Filtered Gallery
   ========================================================= */

.m4y-real-section {
  max-width: 1280px;
  margin: 0 auto;
  padding: 72px 24px 96px;
}

/* Filter buttons */
.m4y-real-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-bottom: 52px;
}

.m4y-real-filter {
  background: transparent;
  border: 2px solid #d1d5db;
  border-radius: 99px;
  color: #374151;
  cursor: pointer;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding: 8px 20px;
  transition: background 0.18s, border-color 0.18s, color 0.18s;
}

.m4y-real-filter:hover {
  background: #5b91f5;
  border-color: #5b91f5;
  color: #fff;
}

.m4y-real-filter.is-active {
  background: var(--m4y-accent, #2563eb);
  border-color: var(--m4y-accent, #2563eb);
  color: #fff;
}

.m4y-real-count {
  background: rgba(255,255,255,0.25);
  border-radius: 99px;
  font-size: 12px;
  font-weight: 700;
  margin-left: 6px;
  padding: 1px 7px;
}

.m4y-real-filter.is-active .m4y-real-count {
  background: rgba(255,255,255,0.3);
}

.m4y-real-filter:not(.is-active) .m4y-real-count {
  background: #e5e7eb;
  color: #6b7280;
}

/* Grid */
.m4y-real-grid {
  columns: 4;
  column-gap: 12px;
}

.m4y-real-item {
  break-inside: avoid;
  margin-bottom: 12px;
  position: relative;
  overflow: hidden;
  border-radius: 6px;
}

.m4y-real-item a {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 6px;
}

.m4y-real-item img {
  border-radius: 6px;
  display: block;
  height: auto;
  object-fit: cover;
  transition: transform 0.4s ease, filter 0.4s ease;
  width: 100%;
}

.m4y-real-item a:hover img {
  filter: brightness(0.75);
  transform: scale(1.04);
}

/* Zoom overlay icon */
.m4y-real-overlay {
  align-items: center;
  color: #fff;
  display: flex;
  inset: 0;
  justify-content: center;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s;
}

.m4y-real-item a:hover .m4y-real-overlay {
  opacity: 1;
}

/* Responsive */
@media (max-width: 1024px) {
  .m4y-real-grid {
    columns: 3;
  }
}

@media (max-width: 680px) {
  .m4y-real-grid {
    columns: 2;
    column-gap: 8px;
  }

  .m4y-real-item {
    margin-bottom: 8px;
  }

  .m4y-real-filters {
    gap: 8px;
  }

  .m4y-real-filter {
    font-size: 13px;
    padding: 7px 14px;
  }
}

/* =========================================================
   KONTAKT
   ========================================================= */

/* Two-column info + map */
.m4y-contact-section {
  background: #fff;
}

.m4y-contact-wrap {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 64px;
  align-items: start;
  max-width: 1160px;
  margin: 0 auto;
  padding: 80px 24px 88px;
}

/* Info column */
.m4y-contact-info .m4y-section-heading {
  text-align: left !important;
  margin-bottom: 40px;
}

.m4y-contact-info .m4y-section-heading::before {
  margin: 0 0 12px !important;
  display: block;
}

.m4y-contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.m4y-contact-row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  font-size: 16px;
  line-height: 1.6;
  color: #374151;
}

.m4y-contact-icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  background: #eff6ff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--m4y-accent, #2563eb);
}

.m4y-contact-link {
  color: #12171e;
  text-decoration: none;
  transition: color 0.18s;
}

.m4y-contact-link:hover {
  color: var(--m4y-accent, #2563eb);
}

.m4y-contact-meta {
  color: #6b7280;
  font-size: 15px;
}

/* Map column */
.m4y-contact-map {
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.m4y-contact-map iframe {
  width: 100%;
  height: 460px;
  border: 0;
  border-radius: 10px;
  display: block;
  box-shadow: 0 4px 24px rgba(0,0,0,0.10);
}

.m4y-contact-map-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--m4y-accent, #2563eb);
  text-decoration: none;
  transition: opacity 0.18s;
}

.m4y-contact-map-link:hover {
  opacity: 0.75;
}

/* Quick contact band */
.m4y-quick-contact {
  background: var(--m4y-dark, #12171e);
  padding: 80px 24px 96px;
  margin-bottom: 44px;
}

.m4y-quick-contact__inner {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.m4y-quick-contact .m4y-section-heading {
  color: #fff;
}

.m4y-quick-contact .m4y-section-heading::before {
  margin-left: auto;
  margin-right: auto;
}

.m4y-quick-contact__lead {
  color: #9ca3af;
  font-size: 17px;
  margin: -24px 0 52px;
}

/* Three cards */
.m4y-quick-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.m4y-quick-card {
  background: #1c2430;
  border: 1px solid rgba(255,255,255,0.07);
  border-top: 3px solid var(--m4y-accent, #2563eb);
  border-radius: 10px;
  padding: 40px 28px 36px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: transform 0.22s, box-shadow 0.22s;
}

.m4y-quick-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(37,99,235,0.18);
}

.m4y-quick-card__icon {
  color: var(--m4y-accent, #2563eb);
  margin-bottom: 8px;
}

.m4y-quick-card__label {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #9ca3af;
}

.m4y-quick-card__value {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 6px;
  word-break: break-all;
}

.m4y-quick-card__btn {
  display: inline-block;
  background: var(--m4y-accent, #2563eb);
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 11px 28px;
  border-radius: 4px;
  margin-top: 8px;
  transition: background 0.2s;
}

.m4y-quick-card__btn:hover {
  background: #1d4ed8;
}

/* Responsive */
@media (max-width: 900px) {
  .m4y-contact-wrap {
    grid-template-columns: 1fr;
    gap: 48px;
    padding: 56px 20px 64px;
  }

  .m4y-contact-map {
    position: static;
  }

  .m4y-contact-map iframe {
    height: 300px;
  }

  .m4y-quick-cards {
    grid-template-columns: 1fr;
    max-width: 400px;
    margin: 0 auto;
  }
}
