/* ═══════════════════════════════════════
   Hero
   ═══════════════════════════════════════ */

.hero {
	position: relative;
	overflow: hidden;
	padding-top: 56px;
}

@media (min-width: 1024px) {
	.hero { padding-top: 0; }
}

.hero__bg {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, var(--sky-primary-light) 0%, #fff 50%, var(--sun-secondary-light) 100%);
	z-index: 0;
}

.hero__blob {
	position: absolute;
	border-radius: 50%;
	filter: blur(64px);
	pointer-events: none;
}

.hero__blob--top { top: -160px; right: -80px; width: 400px; height: 400px; background: rgba(124,196,232,0.15); }

.hero__blob--bottom { bottom: -120px; left: -80px; width: 300px; height: 300px; background: rgba(255,233,163,0.3); }

.hero--tax { padding-top: 56px; }
.hero--tax .wrapper { position: relative; z-index: 1; padding: 24px; }
@media (min-width: 1024px) { .hero--tax { padding-top: 0; } .hero--tax .wrapper { padding: 48px 48px 32px; } }

.hero__section {
	position: relative;
	z-index: 1;
	padding: 24px 24px;
}

.hero__section--text { padding-bottom: 24px; }

.hero__container {
	width: 100%;
	max-width: 1024px;
	margin: 0 auto;
}

.hero__text-content {
	text-align: center;
}

@media (min-width: 1024px) {
	.hero__text-content { text-align: center; }
	.hero__section--text { padding: 24px 24px 48px; }
}

.hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 16px 6px 12px;
	border-radius: 9999px;
	background: rgba(255,255,255,0.8);
	backdrop-filter: blur(4px);
	border: 1px solid rgba(124,196,232,0.3);
	font-size: 0.6875rem;
	text-transform: uppercase;
	letter-spacing: 0.18em;
	color: var(--sky-primary-dark);
	font-weight: 600;
	margin-bottom: 16px;
}

.hero__badge-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--sun-secondary);
}

.hero__title {
	font-family: var(--font-display);
	font-size: 2.4rem;
	font-weight: 600;
	color: var(--slate-800);
	line-height: 1.08;
	margin: 0 0 20px;
}

@media (min-width: 640px) { .hero__title { font-size: 3rem; } }
@media (min-width: 1024px) { .hero__title { font-size: 3.75rem; } }
@media (min-width: 1280px) { .hero__title { font-size: 4.5rem; } }

.hero__title em {
	font-style: normal;
	color: var(--sky-primary-dark);
}

.hero__subtitle {
	font-size: 1rem;
	color: var(--slate-600);
	line-height: 1.7;
	max-width: 576px;
	margin: 0 auto 32px;
}

@media (min-width: 640px) { .hero__subtitle { font-size: 1.125rem; } }

.hero__actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: center;
}

.hero__visual {
	position: relative;
	width: 100%;
	padding: 24px 0 40px;
}

[data-component="before-after"] {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

@media (min-width: 1024px) {
	.hero__subtitle { margin: 0 auto 32px; }
}

/* ═══════════════════════════════════════
   Before/After Slider
   ═══════════════════════════════════════ */

.ba-slider {
	position: relative;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 16px 40px rgba(79, 169, 211, 0.15);
	width: 100%;
	margin: 0 auto;
	aspect-ratio: 780 / 183;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

@media (min-width: 640px) { .ba-slider { border-radius: 32px; } }

.ba-slider__figure {
	height: 100%;
	margin: 0;
	position: relative;
	width: 100%;
}

.ba-slider__after {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	max-width: 99%;
	min-width: 1%;
	overflow: hidden;
	background-size: cover;
	background-position: left center;
	background-repeat: no-repeat;
	border-right: 3px solid rgba(255,255,255,0.9);
}

.ba-slider__range {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	cursor: col-resize;
	height: 100%;
	left: 0;
	margin: 0;
	outline: none;
	padding: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
}

.ba-slider__range::-webkit-slider-track { background: transparent; }
.ba-slider__range::-moz-range-track { background: transparent; border: none; }
.ba-slider__range::-ms-track {
	background: transparent; border: none; color: transparent;
}

.ba-slider__range::-webkit-slider-thumb {
	-webkit-appearance: none;
	height: 100%;
	width: 6px;
	opacity: 0;
}

.ba-slider__range::-moz-range-thumb {
	height: 100%;
	width: 6px;
	opacity: 0;
	border: none;
	border-radius: 0;
}

.ba-slider__range::-ms-thumb {
	height: 100%;
	width: 6px;
	opacity: 0;
}

.ba-slider__range::-ms-tooltip { display: none; }

.ba-slider__label {
	position: absolute;
	padding: 4px 10px;
	border-radius: 8px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	z-index: 5;
	display: none;
}

@media (min-width: 640px) { .ba-slider__label { display: block; font-size: 11px; } }

.ba-slider__label--before {
	top: 12px;
	left: 12px;
	right: auto;
	background: rgba(0, 155, 219, 0.9);
	backdrop-filter: blur(4px);
	color: #fff;
	box-shadow: 0 2px 8px rgba(0,155,219,0.25);
}

.ba-slider__label--after {
	bottom: 12px;
	right: 12px;
	left: auto;
	background: rgba(255,255,255,0.9);
	backdrop-filter: blur(4px);
	color: var(--slate-700);
	box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

/* ═══════════════════════════════════════
   Hero Rating Badge
   ═══════════════════════════════════════ */

.hero__badge-stats {
	position: absolute;
	bottom: 12px;
	left: 12px;
	z-index: 15;
	display: none;
	align-items: stretch;
	gap: 0;
	padding: 0;
	border-radius: 14px;
	overflow: hidden;
	background: rgba(30, 35, 48, 0.82);
	backdrop-filter: blur(16px);
	box-shadow: 0 8px 32px rgba(0,0,0,0.3);
	border: 1px solid rgba(255,255,255,0.06);
}

.hero__badge-stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	padding: 8px 14px;
	position: relative;
}

.hero__badge-stat + .hero__badge-stat::before {
	content: "";
	position: absolute;
	left: 0;
	top: 20%;
	height: 60%;
	width: 1px;
	background: rgba(255,255,255,0.08);
}

.hero__badge-stat:first-child {
	padding-left: 16px;
}

.hero__badge-stat:last-child {
	padding-right: 16px;
}

.hero__badge-stat-value {
	font-family: var(--font-display);
	font-size: 0.9375rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	text-shadow: 0 1px 4px rgba(0,0,0,0.2);
}

.hero__badge-stat-value svg {
	color: var(--sun-secondary);
	filter: drop-shadow(0 1px 2px rgba(237,207,86,0.3));
}

.hero__badge-stat-label {
	font-size: 0.5rem;
	color: rgba(255,255,255,0.5);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	line-height: 1.2;
	white-space: nowrap;
	font-weight: 500;
}

@media (min-width: 640px) {
	.hero__badge-stats {
		display: flex;
		bottom: 16px;
		left: 16px;
		border-radius: 16px;
	}
	.hero__badge-stat { padding: 10px 18px; }
	.hero__badge-stat:first-child { padding-left: 22px; }
	.hero__badge-stat:last-child { padding-right: 22px; }
	.hero__badge-stat-value { font-size: 1.0625rem; }
	.hero__badge-stat-label { font-size: 0.5625rem; letter-spacing: 0.1em; }
}

/* ═══════════════════════════════════════
   Floating cards (Hero)
   ═══════════════════════════════════════ */

.floating-card {
	position: absolute;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 16px 40px rgba(15,23,42,0.1);
	border: 1px solid var(--slate-100);
	padding: 16px;
	display: none;
	backdrop-filter: blur(8px);
}

@media (min-width: 1024px) { .floating-card { display: flex; gap: 12px; align-items: center; } }

.floating-card--bottom {
	bottom: -24px;
	left: -24px;
	max-width: 240px;
}

.floating-card--top {
	top: -24px;
	right: -24px;
	padding: 10px 16px;
}

.floating-card__icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--sky-primary-light), #fff);
	display: flex;
	align-items: center;
	justify-content: center;
}

.floating-card__title {
	font-family: var(--font-display);
	font-size: 1rem;
	font-weight: 600;
	color: var(--slate-800);
	margin: 0 0 2px;
}

.floating-card__text {
	font-size: 0.6875rem;
	color: var(--slate-500);
	margin: 0;
}

.floating-card__status {
	font-size: 0.75rem;
	font-weight: 500;
	color: var(--slate-700);
}

.treat-card__badge {
	margin-bottom: 8px;
	display: inline-block;
}

.floating-card__dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--emerald-500);
	margin-right: 6px;
	animation: pulse 2s infinite;
}

/* ═══════════════════════════════════════
   Front Page — Category Grid
   ═══════════════════════════════════════ */

.cat-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

@media (min-width: 768px) { .cat-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; } }

@media (min-width: 1024px) { .cat-grid { gap: 32px; } }

.cat-grid__group-heading {
	grid-column: 1 / -1;
	margin: 24px 0 -4px;
}
.cat-grid__group-heading h3 {
	font-family: var(--font-display);
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--sky-primary-dark);
	margin: 0;
}

.cat-card {
	background: #fff;
	border: 1px solid var(--slate-100);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
	transition: all 0.3s;
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

.cat-card:hover {
	box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

.cat-card__img {
	aspect-ratio: 4/3;
	overflow: hidden;
}

.cat-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s;
}

.cat-card:hover .cat-card__img img { transform: scale(1.05); }

.cat-card__body {
	padding: 12px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

@media (min-width: 768px) { .cat-card__body { padding: 20px; } }

@media (min-width: 1024px) { .cat-card__body { padding: 24px; } }

.cat-card h3 {
	font-family: var(--font-display);
	font-weight: 600;
	color: var(--slate-800);
	font-size: 1rem;
	line-height: 1.2;
	transition: color 0.2s;
	margin: 0;
}

@media (min-width: 768px) { .cat-card h3 { font-size: 1.25rem; } }

@media (min-width: 1024px) { .cat-card h3 { font-size: 1.5rem; } }

.cat-card:hover h3 { color: var(--sky-primary-dark); }

.cat-card p {
	color: var(--slate-600);
	font-size: 11px;
	margin-top: 8px;
	display: none;
	line-height: 1.5;
}

@media (min-width: 640px) { .cat-card p { display: block; } }

@media (min-width: 1024px) { .cat-card p { font-size: 0.75rem; } }

.cat-card__link {
	margin-top: 16px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 600;
	color: var(--sky-primary-dark);
	transition: gap 0.2s;
}

@media (min-width: 768px) { .cat-card__link { font-size: 0.75rem; margin-top: 24px; } }

.cat-card:hover .cat-card__link { gap: 10px; }


/* ═══════════════════════════════════════
   Front Page — Blog Carousel
   ═══════════════════════════════════════ */

.blog-carousel {
	max-width: 768px;
	margin: 0 auto;
}

.blog-card {
	background: #fff;
	border: 1px solid var(--slate-100);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.blog-card__inner {
	display: grid;
}

@media (min-width: 640px) {
	.blog-card__inner { grid-template-columns: 2fr 3fr; }
}

.blog-card__media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1/1;
}

@media (min-width: 640px) { .blog-card__media { aspect-ratio: auto; min-height: 300px; } }

.blog-card__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-card__content {
	padding: 16px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

@media (min-width: 640px) { .blog-card__content { padding: 24px; } }

@media (min-width: 1024px) { .blog-card__content { padding: 32px; } }

.blog-card__tags {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
}

.blog-tag {
	padding: 2px 10px;
	border-radius: 9999px;
	background: var(--sky-primary-light);
	color: var(--sky-primary-dark);
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

@media (min-width: 640px) { .blog-tag { font-size: 10px; padding: 2px 10px; } }

.blog-date {
	font-size: 9px;
	color: var(--slate-800);
	background: var(--sun-secondary);
	padding: 2px 8px;
	border-radius: 4px;
	white-space: nowrap;
}

@media (min-width: 640px) { .blog-date { font-size: 10px; } }

.blog-card h3 {
	font-family: var(--font-display);
	font-weight: 600;
	color: var(--slate-800);
	font-size: 1.125rem;
	line-height: 1.2;
	margin: 0;
}
.blog-card h3 a {
	color: inherit;
	text-decoration: none;
}
.blog-card h3 a:hover {
	color: var(--sun-primary, #e67e22);
}

@media (min-width: 640px) { .blog-card h3 { font-size: 1.25rem; } }

@media (min-width: 1024px) { .blog-card h3 { font-size: 1.5rem; } }

.blog-card__excerpt {
	font-size: 11px;
	color: var(--slate-600);
	margin-top: 8px;
	line-height: 1.6;
}

@media (min-width: 640px) { .blog-card__excerpt { font-size: 0.75rem; } }

.blog-card__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 16px;
	padding-top: 12px;
	border-top: 1px solid var(--slate-100);
}

.blog-card__read-more {
	font-size: 14px;
	font-weight: 600;
	color: var(--sky-primary-dark);
	display: inline-flex;
	align-items: center;
	gap: 4px;
	text-decoration: none;
	transition: gap 0.3s;
}

.blog-card__read-more:hover { gap: 8px; opacity: 1; }

@media (min-width: 640px) { .blog-card__read-more { font-size: 0.75rem; } }

.blog-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 16px;
}

.blog-dot {
	height: 20px;
	border-radius: 9999px;
	background: var(--slate-300);
	transition: all 0.3s;
	cursor: pointer;
	border: none;
	padding: 0;
}

.blog-dot.active { width: 40px; background: var(--sky-primary-dark); }

.blog-dot:not(.active) { width: 20px; }

.blog-dot:not(.active):hover { background: var(--sky-primary); }

/* ═══════════════════════════════════════
   Front Page — Reviews
   ═══════════════════════════════════════ */

.reviews-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	max-width: 1024px;
	margin: 0 auto;
	position: relative;
}

@media (min-width: 768px) {
	.reviews-layout {
		grid-template-columns: 25% 75%;
	}
	.reviews-layout .reviews-grid {
		max-width: none;
		margin: 0;
		padding-right: 20px;
	}
}

.reviews-grid .reviews-nav {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 2;
}

.reviews-nav__btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: none;
	background: rgba(255,255,255,.95);
	box-shadow: 0 2px 6px rgba(0,0,0,.15);
	cursor: pointer;
	font-size: 1.5rem;
	line-height: 1;
	color: var(--sky-primary, #009BDB);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .15s;
	pointer-events: auto;
	z-index: 3;
}

.reviews-nav__btn:hover {
	background: #fff;
	box-shadow: 0 3px 10px rgba(0,0,0,.2);
	color: var(--sky-primary-dark, #0073A8);
}

.reviews-nav__btn--prev { left: -20px; }
.reviews-nav__btn--next { right: 0; }
@media (max-width: 767px) { .reviews-nav__btn--next { right: -20px; } }

.reviews-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: 1fr;
}

@media (min-width: 768px) { .reviews-grid { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; } }

.review-card {
	background: #fff;
	border: 0;
	border-radius: 12px;
	padding: 0 0 10px;
	display: flex;
	flex-direction: column;
	box-shadow: 1px 4px 10px rgba(0,0,0,.1), 0 0 2px rgba(0,0,0,.05);
	position: relative;
}

.review-card__header {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 20px 8px;
	position: relative;
}

.review-card__platform {
	width: 20px;
	height: 20px;
	position: absolute;
	top: 16px;
	right: 16px;
	color: var(--slate-400);
}

.review-card__details {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}

.review-card__name {
	font-weight: 600;
	font-size: 0.9rem;
	color: #000;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-right: 28px;
}

.review-card__date {
	color: #888;
	font-size: 11px;
	margin-top: 1px;
}

.review-card__stars {
	display: flex;
	align-items: center;
	gap: 2px;
	padding: 0 20px;
	margin-bottom: 4px;
}

.star {
	font-size: 17px;
	line-height: 1;
	display: inline-block;
}

.star--full { color: #f6bb06; }
.star--half { color: #f6bb06; }
.star--empty { color: #ccc; }

.review-card__verified {
	color: #34a853;
	width: 14px;
	height: 14px;
	display: inline-flex;
	margin-left: 4px;
	position: relative;
	top: -1px;
}

.review-card__text {
	color: #333;
	font-size: 0.8rem;
	line-height: 1.55;
	margin: 0;
	padding: 0 20px;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ti-row {
	margin-top: 40px;
	background: #fff;
	border-radius: 12px;
	padding: 16px 20px;
	box-shadow: 1px 4px 10px rgba(0,0,0,.1), 0 0 2px rgba(0,0,0,.05);
	width: 100%;
	box-sizing: border-box;
}

.ti-row__bottom {
	display: flex;
	align-items: center;
	gap: 14px;
}

.ti-row__img {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
}

.ti-row__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ti-row__info {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

.ti-name {
	font-weight: 700;
	font-size: 1rem;
	color: #000;
	text-decoration: none;
}

.ti-name:hover {
	text-decoration: none;
	color: #000;
}

.ti-stars {
	display: flex;
	gap: 2px;
	line-height: 1;
}

.ti-rating-text {
	font-size: 0.8rem;
	color: #555;
}

.ti-rating-text strong {
	color: #222;
}

.ti-header-write-btn-container {
	margin: 26px 0 0;
	display: flex;
	justify-content: center;
}

@media (max-width: 640px) {
	.ti-row__bottom {
		flex-direction: column;
		text-align: center;
	}
	.ti-row__info {
		align-items: center;
	}
	.ti-row__img {
		margin: 0 auto;
	}
	.ti-stars {
		justify-content: center;
	}
}

.reviews-footer {
	text-align: center;
	margin-top: 32px;
}

.reviews-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 16px;
}

.reviews-dot {
	width: 20px;
	height: 20px;
	border-radius: 9999px;
	background: var(--slate-300);
	transition: all 0.3s;
	cursor: pointer;
	border: none;
	padding: 0;
}

.reviews-dot.active { width: 40px; background: var(--sky-primary-dark); }

.reviews-dot:not(.active):hover { background: var(--sky-primary); }

/* ═══════════════════════════════════════
   Front Page — Why Choose Us
   ═══════════════════════════════════════ */

.why-grid {
	display: grid;
	gap: 32px;
	align-items: center;
}

@media (min-width: 1024px) { .why-grid { grid-template-columns: 1fr 1fr; gap: 48px; } }

.why-copy {
	min-width: auto;
}

@media (min-width: 1024px) { .why-copy { min-width: 400px; } }

.why-copy .section-header {
	text-align: left;
	margin-left: 0;
	margin-bottom: 24px;
}

.feature-list {
	margin-top: 16px;
	list-style: none;
	padding: 0;
}

.feature-item {
	display: flex;
	gap: 16px;
	margin-bottom: 16px;
}

.feature-check {
	height: 24px;
	width: 24px;
	border-radius: 50%;
	background: var(--sky-primary-light);
	color: var(--sky-primary-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 0.75rem;
	flex-shrink: 0;
	margin-top: 2px;
}

.feature-item strong {
	font-size: 0.875rem;
	color: var(--slate-800);
}

.feature-item p {
	font-size: 0.75rem;
	color: var(--slate-500);
	margin-top: 2px;
	line-height: 1.5;
}

.why-media {
	position: relative;
}

.why-media__img {
	aspect-ratio: 4/3;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(15,23,42,0.12);
}

.why-media__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.why-badge {
	display: none;
	position: absolute;
	bottom: -20px;
	left: -16px;
	background: #fff;
	border-radius: 16px;
	padding: 20px;
	box-shadow: 0 20px 50px rgba(15,23,42,0.12);
	max-width: 240px;
	border: 1px solid var(--slate-100);
}

@media (min-width: 1024px) { .why-badge { display: block; left: -24px; } }

.why-badge strong {
	font-family: var(--font-display);
	font-size: 1.125rem;
	color: var(--slate-800);
}

.why-badge p {
	font-size: 0.75rem;
	color: var(--slate-500);
	margin-top: 4px;
	margin: 4px 0 0;
}

/* ═══════════════════════════════════════
   Brands — Professional Carousel
   ═══════════════════════════════════════ */

.brands-grid {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

.brand-card {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 160px;
	height: 160px;
	background: #fff;
	border-radius: 16px;
	padding: 20px;
	text-decoration: none;
	transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.brand-card:hover {
	box-shadow: 0 8px 24px rgba(0,155,219,0.12);
	transform: translateY(-3px) scale(1.02);
}

.brand-card__img {
	width: 100%;
	max-width: 80%;
	height: auto;
	aspect-ratio: 1;
	object-fit: contain;
	display: block;
}

@media (max-width: 639px) {
	.brands-grid { gap: 12px; }
	.brand-card { width: 130px; height: 130px; padding: 16px; }
}

